gate.creole
Class BootStrap

java.lang.Object
  |
  +--gate.creole.BootStrap

public class BootStrap
extends Object

This class creates a resource (e.g.ProcessingResource, VisualResource or Language Resource) with the information from the user and generates a project in the directory provided by the user


Constructor Summary
BootStrap()
           
 
Method Summary
 String changeKeyValue(String text, Map map)
          Determines all the keys from the map "names" in the text and replaces them with their values
 Map createNames(String packageName, String resourceName, String className, String stringPackages, String interfacesAndClass)
          create the map with variants of the names...
 void createResource(String resourceName, String packageName, String typeResource, String className, Set interfacesList, String pathNewProject)
          Creates the resource and dumps out a project structure using the structure from gate/resource/creole/templateproject/Template and the information provided by the user
 List determinePath(String packageName)
          determines the name of the packages and adds them to a list
 String determineTypePackage(String text)
          determines the package of the main class
 String displayMethodsAndFields(List methods, Map fields)
          write the methods and the fields in the right form
 List featuresClass(Class currentClass, List methodsList)
          go through all methods and determines return type, parameters, exceptions
 String getInterfacesAndClass(String typeResource, Set interfacesList)
          returns the string with the interfaces that implement the main class and the class that extends it
 void getMethodsAndFields(List methodsExtendList, List methodsInterfacesList)
          create the form for the methods from the class that create the resource
static void main(String[] args)
           
 String namesPackages(Set listPackages)
          determine all the packages
 void verifyInput(String className, String pathNewProject)
          verify if the class name contains only letters and digits the path of the new project is a directory
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BootStrap

public BootStrap()
Method Detail

changeKeyValue

public String changeKeyValue(String text,
                             Map map)
                      throws gnu.regexp.REException
Determines all the keys from the map "names" in the text and replaces them with their values

determineTypePackage

public String determineTypePackage(String text)
determines the package of the main class

getInterfacesAndClass

public String getInterfacesAndClass(String typeResource,
                                    Set interfacesList)
                             throws ClassNotFoundException
returns the string with the interfaces that implement the main class and the class that extends it

featuresClass

public List featuresClass(Class currentClass,
                          List methodsList)
go through all methods and determines return type, parameters, exceptions

getMethodsAndFields

public void getMethodsAndFields(List methodsExtendList,
                                List methodsInterfacesList)
create the form for the methods from the class that create the resource

displayMethodsAndFields

public String displayMethodsAndFields(List methods,
                                      Map fields)
write the methods and the fields in the right form

createNames

public Map createNames(String packageName,
                       String resourceName,
                       String className,
                       String stringPackages,
                       String interfacesAndClass)
create the map with variants of the names...

namesPackages

public String namesPackages(Set listPackages)
determine all the packages

determinePath

public List determinePath(String packageName)
                   throws IOException
determines the name of the packages and adds them to a list

verifyInput

public void verifyInput(String className,
                        String pathNewProject)
                 throws GateException
verify if the class name contains only letters and digits the path of the new project is a directory

createResource

public void createResource(String resourceName,
                           String packageName,
                           String typeResource,
                           String className,
                           Set interfacesList,
                           String pathNewProject)
                    throws IOException,
                           ClassNotFoundException,
                           gnu.regexp.REException,
                           GateException
Creates the resource and dumps out a project structure using the structure from gate/resource/creole/templateproject/Template and the information provided by the user

main

public static void main(String[] args)