org.eclipse.emf.codegen.jet
Class JETNature

java.lang.Object
  extended byorg.eclipse.emf.codegen.jet.JETNature
All Implemented Interfaces:
IJETNature, IProjectNature

public class JETNature
extends Object
implements IJETNature


Field Summary
protected static String BUILDER
           
protected static String DEFAULT_TEMPLATE_CONTAINER_NAME
           
protected static String JET_NATURE_PROPERTIES_FILE
           
protected static String JET_SETTINGS_NODE
           
protected  IContainer jetJavaSourceContainer
           
protected  IProject jetProject
           
protected  List jetTemplateContainers
           
protected  List jetTemplateSourceContainers
           
protected static String SOURCE_CONTAINER_NODE
           
protected static String TEMPLATE_CONTAINER_NODE
           
 
Fields inherited from interface org.eclipse.emf.codegen.jet.IJETNature
NATURE_ID
 
Constructor Summary
JETNature()
          Constructor for JETNature.
 
Method Summary
protected  void addToFrontOfBuildSpec(String builderID)
          Adds a builder to the build spec for the given project.
protected  void commitXML(Document document)
           
 void configure()
           
 void configure(IProgressMonitor monitor)
           
protected  void createDefaultJETSettingsFile(List templateContainers, IContainer sourceContainer)
           
protected  void createDefaultJETSettingsFile(List templateContainers, List templateSourceContainers, IContainer sourceContainer)
          Writes the default file
 void deconfigure()
           
protected  Element getChildWithLocalName(Element element, String localName)
          Returns the child with the given local name.
static String getContainer(IProject project, IContainer container)
           
static IContainer getContainer(IProject project, IPath path)
           
static IContainer getContainer(IProject project, String path)
           
static String getContainers(IProject project, List containers)
           
static String getContainers(IProject project, List containers, List sourceContainers)
           
static List getContainers(IProject project, String paths)
           
static List getContainers(IProject project, String paths, boolean filter)
           
protected  IContainer getContainerValue(Element element, String localName)
          Returns the container defined from the base Element passed in.
protected  List getContainerValues(Element element, String localName)
          Returns the containers defined from the base Element passed in.
protected  List getContainerValues(Element element, String localName, boolean filter)
          Returns the containers defined from the base Element passed in with entries starting with @ filtered out.
protected  IPath getDefaultSourcePath()
          Returns the project's root directory
 IContainer getJavaSourceContainer()
          Returns the container where the generated Java sources go.
 IContainer getJavaSourceContainerFromFile()
          Returns the template file from the .jetproperties file
 IProject getProject()
           
static JETNature getRuntime(IProject project)
          Get a JETNature that corresponds to the supplied project.
 List getTemplateContainers()
          Returns the containers where the templates are located.
 List getTemplateContainersFromFile()
          Returns the template path from the .jetproperties file.
 List getTemplateSourceContainers()
          Returns the containers where the template sources are located.
protected  List getTemplateSourceContainersFromFile()
          Returns the template source path from the .jetproperties file.
protected  void initJavaSourceContainer(IProgressMonitor monitor)
          Initializes the Java Source Container
protected  void initTemplateContainer(IProgressMonitor monitor)
          Initializes the template container.
protected  Document parseJETSettings()
          Parse the JET settings file for the root element.
static byte[] readContentsAsBytes(InputStream input)
          Reads an input stream and converts it to bytes
protected  StringReader readJETSettingFile()
          Open the JET Settings file and return a StringReader on the contents
protected  void setContainerValue(IContainer container, Element element, String localName)
          Sets the template container location in the settings file
protected  void setContainerValues(List containers, Element element, String localName)
           
protected  void setContainerValues(List containers, List sourceContainers, Element element, String localName)
          Sets the template container locations in the settings file
 void setDefaults(IProgressMonitor monitor)
          Sets the containers to their defaults.
 void setJavaSourceContainer(IContainer javaSourceContainer)
          Sets the container where the generated Java sources go.
 void setJavaSourceContainerToFile(IContainer sourceContainer)
          Writes the Java Source Container Location to a file
 void setProject(IProject project)
           
 void setTemplateContainers(List templateContainers)
          Sets the containers where the templates are located.
 void setTemplateContainers(List templateContainers, List templateSourceContainers)
          Sets the containers where the template sources are located.
 void setTemplateContainersToFile(List templateContainers)
           
 void setTemplateContainersToFile(List templateContainers, List templateSourceContainers)
          Writes the Template Container Location to a file
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

BUILDER

protected static final String BUILDER
See Also:
Constant Field Values

DEFAULT_TEMPLATE_CONTAINER_NAME

protected static final String DEFAULT_TEMPLATE_CONTAINER_NAME
See Also:
Constant Field Values

JET_NATURE_PROPERTIES_FILE

protected static final String JET_NATURE_PROPERTIES_FILE
See Also:
Constant Field Values

TEMPLATE_CONTAINER_NODE

protected static final String TEMPLATE_CONTAINER_NODE
See Also:
Constant Field Values

SOURCE_CONTAINER_NODE

protected static final String SOURCE_CONTAINER_NODE
See Also:
Constant Field Values

JET_SETTINGS_NODE

protected static final String JET_SETTINGS_NODE
See Also:
Constant Field Values

jetProject

protected IProject jetProject

jetTemplateContainers

protected List jetTemplateContainers

jetTemplateSourceContainers

protected List jetTemplateSourceContainers

jetJavaSourceContainer

protected IContainer jetJavaSourceContainer
Constructor Detail

JETNature

public JETNature()
Constructor for JETNature.

Method Detail

getRuntime

public static JETNature getRuntime(IProject project)
Get a JETNature that corresponds to the supplied project.

Parameters:
project - IProject
Returns:
JETNature

getTemplateContainers

public List getTemplateContainers()
Description copied from interface: IJETNature
Returns the containers where the templates are located.

Specified by:
getTemplateContainers in interface IJETNature
Returns:
the containers where the templates are located.

getTemplateSourceContainers

public List getTemplateSourceContainers()
Description copied from interface: IJETNature
Returns the containers where the template sources are located.

Specified by:
getTemplateSourceContainers in interface IJETNature
Returns:
the containers where the template sources are located.

getJavaSourceContainer

public IContainer getJavaSourceContainer()
Description copied from interface: IJETNature
Returns the container where the generated Java sources go.

Specified by:
getJavaSourceContainer in interface IJETNature
Returns:
the container where the generated Java sources go.

setTemplateContainers

public void setTemplateContainers(List templateContainers)
Description copied from interface: IJETNature
Sets the containers where the templates are located.

Specified by:
setTemplateContainers in interface IJETNature
Parameters:
templateContainers - the new locations.

setTemplateContainers

public void setTemplateContainers(List templateContainers,
                                  List templateSourceContainers)
Description copied from interface: IJETNature
Sets the containers where the template sources are located.

Specified by:
setTemplateContainers in interface IJETNature
Parameters:
templateContainers - the new locations.
templateSourceContainers - the new sourcelocations.

setJavaSourceContainer

public void setJavaSourceContainer(IContainer javaSourceContainer)
Description copied from interface: IJETNature
Sets the container where the generated Java sources go.

Specified by:
setJavaSourceContainer in interface IJETNature
Parameters:
javaSourceContainer - the new location.

configure

public void configure()
               throws CoreException
Specified by:
configure in interface IProjectNature
Throws:
CoreException

configure

public void configure(IProgressMonitor monitor)
               throws CoreException
Throws:
CoreException

setDefaults

public void setDefaults(IProgressMonitor monitor)
                 throws CoreException
Sets the containers to their defaults.

Throws:
CoreException

deconfigure

public void deconfigure()
                 throws CoreException
Specified by:
deconfigure in interface IProjectNature
Throws:
CoreException

getProject

public IProject getProject()
Specified by:
getProject in interface IProjectNature

setProject

public void setProject(IProject project)
Specified by:
setProject in interface IProjectNature

initTemplateContainer

protected void initTemplateContainer(IProgressMonitor monitor)
                              throws CoreException
Initializes the template container.

Throws:
CoreException

initJavaSourceContainer

protected void initJavaSourceContainer(IProgressMonitor monitor)
                                throws CoreException
Initializes the Java Source Container

Throws:
CoreException

getDefaultSourcePath

protected IPath getDefaultSourcePath()
Returns the project's root directory


addToFrontOfBuildSpec

protected void addToFrontOfBuildSpec(String builderID)
                              throws CoreException
Adds a builder to the build spec for the given project.

Throws:
CoreException

getTemplateContainersFromFile

public List getTemplateContainersFromFile()
Returns the template path from the .jetproperties file.


getTemplateSourceContainersFromFile

protected List getTemplateSourceContainersFromFile()
Returns the template source path from the .jetproperties file.


getJavaSourceContainerFromFile

public IContainer getJavaSourceContainerFromFile()
Returns the template file from the .jetproperties file


parseJETSettings

protected Document parseJETSettings()
                             throws ParserConfigurationException,
                                    SAXException,
                                    IOException,
                                    CoreException
Parse the JET settings file for the root element.

Throws:
ParserConfigurationException
SAXException
IOException
CoreException

readJETSettingFile

protected StringReader readJETSettingFile()
                                   throws CoreException,
                                          IOException
Open the JET Settings file and return a StringReader on the contents

Throws:
CoreException
IOException

getContainerValues

protected List getContainerValues(Element element,
                                  String localName)
Returns the containers defined from the base Element passed in.


getContainerValues

protected List getContainerValues(Element element,
                                  String localName,
                                  boolean filter)
Returns the containers defined from the base Element passed in with entries starting with @ filtered out.


getContainerValue

protected IContainer getContainerValue(Element element,
                                       String localName)
Returns the container defined from the base Element passed in.


setContainerValues

protected void setContainerValues(List containers,
                                  Element element,
                                  String localName)

setContainerValues

protected void setContainerValues(List containers,
                                  List sourceContainers,
                                  Element element,
                                  String localName)
Sets the template container locations in the settings file


setContainerValue

protected void setContainerValue(IContainer container,
                                 Element element,
                                 String localName)
Sets the template container location in the settings file


getChildWithLocalName

protected Element getChildWithLocalName(Element element,
                                        String localName)
Returns the child with the given local name.


readContentsAsBytes

public static byte[] readContentsAsBytes(InputStream input)
                                  throws IOException
Reads an input stream and converts it to bytes

Throws:
IOException

setTemplateContainersToFile

public void setTemplateContainersToFile(List templateContainers)
                                 throws CoreException
Throws:
CoreException

setTemplateContainersToFile

public void setTemplateContainersToFile(List templateContainers,
                                        List templateSourceContainers)
                                 throws CoreException
Writes the Template Container Location to a file

Throws:
CoreException

setJavaSourceContainerToFile

public void setJavaSourceContainerToFile(IContainer sourceContainer)
                                  throws CoreException
Writes the Java Source Container Location to a file

Throws:
CoreException

createDefaultJETSettingsFile

protected void createDefaultJETSettingsFile(List templateContainers,
                                            IContainer sourceContainer)
                                     throws CoreException,
                                            IOException
Throws:
CoreException
IOException

createDefaultJETSettingsFile

protected void createDefaultJETSettingsFile(List templateContainers,
                                            List templateSourceContainers,
                                            IContainer sourceContainer)
                                     throws CoreException,
                                            IOException
Writes the default file

Throws:
CoreException
IOException

commitXML

protected void commitXML(Document document)
                  throws CoreException,
                         ClassNotFoundException,
                         IOException
Throws:
CoreException
ClassNotFoundException
IOException

getContainer

public static IContainer getContainer(IProject project,
                                      IPath path)

getContainer

public static IContainer getContainer(IProject project,
                                      String path)

getContainers

public static List getContainers(IProject project,
                                 String paths)

getContainers

public static List getContainers(IProject project,
                                 String paths,
                                 boolean filter)

getContainers

public static String getContainers(IProject project,
                                   List containers)

getContainers

public static String getContainers(IProject project,
                                   List containers,
                                   List sourceContainers)

getContainer

public static String getContainer(IProject project,
                                  IContainer container)

Copyright 2001-2006 IBM Corporation and others.
All Rights Reserved.