AbstractFileGenAction Class
- public abstract class AbstractFileGenAction
extends DefaultAction
Base class for actions that generate files from a parent file..
-
Hierarchy
-
Object
DefaultAction
AbstractFileGenAction
-
All Implemented Interfaces
-
ActionListener
, EventListener
, IAction
, PropertyChangeListener
public void |
-
actionPerformed (ActionEvent aevt)
- Perform the file generation, based on calculated or set parameters.
|
public URI |
-
generate (URI sourceURI)
- Generate a child file from the given parent.
|
public boolean |
-
generate (URI sourceURI, URI destURI)
- Generate a specific destination from the given parent.
|
protected String |
-
getClassFromURI (URI path)
- Calculate a classname based on a filename.
|
protected String |
-
getContents (URI sourceURI, URI destURI)
- Get the contents for the destination file.
|
protected abstract URI |
-
getDestURI (URI sourceURI)
- Calculate the URI to generate.
|
protected String |
-
getPackageFromURI (URI path)
- Calculate a package based on a filename.
|
protected URI |
-
getPopupURI ()
- get the URI for the workspace popup menu, if exactly one file is selected.
|
protected abstract String |
-
getPropertyName ()
- The name of the property in the IPropertyInfoFeature that contains the base
for this generated file.
|
protected URI |
-
getSourceURI ()
- the URI we're acting on.
|
public String |
-
getSrc (Reader in, IFile sourceFile)
- Get the source contents as a string.
|
public boolean |
-
isAncestor (URI sourceURI, URI destURI)
- Check the getParent() hierarchy of the source URI to ensure that we're
not about to create a loop.
|
protected boolean |
-
isError (URI sourceURI, URI destURI)
- Check for and show errors related to autogeneration.
|
public void |
-
prepare (IPopupContext pc)
- prepares for a popup.
|
protected void |
-
saveContents (URI source, URI destination, String contents)
- Save the given contents to the destination.
|
public void |
-
setDestinationURI (URI dest)
- Set the source URI explicitly.
|
public void |
-
setSourceURI (URI source)
- Set the source URI explicitly.
|
protected void |
-
showError (String error)
- Show an error during autogeneration.
|
public static String |
-
staticGetSrc (Reader in, IFile sourceFile)
- Static version of getSrc.
|
Methods from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
_overrideDestUri
protected URI
_overrideDestUri
_overrideSourceUri
protected URI
_overrideSourceUri
_res
protected static ResourceSvc.IResourcePkg
_res
- strings at bottom of source file.
AbstractFileGenAction
public AbstractFileGenAction()
actionPerformed(ActionEvent) Method
public void actionPerformed(ActionEvent
aevt)
Perform the file generation, based on calculated or set parameters.
Parameters
-
aevt
- AWT action event associated with this invocation.
generate(URI) Method
public URI
generate(URI
sourceURI)
Generate a child file from the given parent.
Returns
- the URI of the generated file, or null if none was generated.
generate(URI, URI) Method
public boolean generate(URI
sourceURI,
URI
destURI)
Generate a specific destination from the given parent.
Parameters
-
sourceURI
- the parent file.
-
destURI
- the destination file.
Returns
- true if the file was generated, false otherwise.
getClassFromURI(URI) Method
protected String
getClassFromURI(URI
path)
Calculate a classname based on a filename.
Parameters
-
path
- the URI to a file.
Returns
- a best-guess classname (without package) for the file.
getContents(URI, URI) Method
protected String
getContents(URI
sourceURI,
URI
destURI)
Get the contents for the destination file. This is often the easiest method to
override to make specific changes to the file generation.
Parameters
-
sourceURI
- the source document.
-
destURI
- the document being generated.
Returns
- the contents which should be written to destURI.
getDestURI(URI) Method
protected abstract URI
getDestURI(URI
sourceURI)
Calculate the URI to generate. This will generally be found by chopping off the extension
and adding a new one.
Parameters
-
sourceURI
- the URI we're acting upon.
Returns
- The URI this action will create.
getPackageFromURI(URI) Method
protected String
getPackageFromURI(URI
path)
Calculate a package based on a filename.
Parameters
-
path
- the URI to a file. This URI must be in a project.
Returns
- a best-guess package for the file.
getPopupURI() Method
protected URI
getPopupURI()
get the URI for the workspace popup menu, if exactly one file is selected. Null otherwise.
Not used unless a subclass calls it.
getPropertyName() Method
protected abstract String
getPropertyName()
The name of the property in the IPropertyInfoFeature that contains the base
for this generated file.
getSourceURI() Method
protected URI
getSourceURI()
the URI we're acting on. By default, the currently displayed file,
but could be overridden by a subclass to work on a popup. The easy way to override
is to return getPopupURI();
Returns
- the URI for the source file.
getSrc(Reader, IFile) Method
public String
getSrc(Reader
in,
IFile
sourceFile)
Get the source contents as a string. This does some checking of encoding as well.
Parameters
-
in
- a Reader for the source document.
-
sourceFile
- the IFile of the source document
Returns
- a String containing the contents of the source document.
isAncestor(URI, URI) Method
public boolean isAncestor(URI
sourceURI,
URI
destURI)
Check the getParent() hierarchy of the source URI to ensure that we're
not about to create a loop.
Returns
- true if the dest is an autogen ancestor of source.
isError(URI, URI) Method
protected boolean isError(URI
sourceURI,
URI
destURI)
Check for and show errors related to autogeneration. This verifies that the destination is
writable, that it's not creating an autogen loop, and that the source document does not contain
compilation errors.
Returns
- true if errors prevent this action from working, false if it
should continue.
prepare(IPopupContext) Method
public void prepare(IPopupContext
pc)
prepares for a popup. Set my state to show or not on the menu based on the
workspace state. We don't actually implement IPopupMenu, this just makes it trivial for
subclasses to do so.
saveContents(URI, URI, String) Method
protected void saveContents(URI
source,
URI
destination,
String
contents)
Save the given contents to the destination.
Parameters
-
source
- the URI of the source file.
-
destination
- the URI to write to.
-
contents
- the contents which should be written.
setDestinationURI(URI) Method
public void setDestinationURI(URI
dest)
Set the source URI explicitly. Not all subclasses honor this.
Parameters
-
dest
- The URI that this action will create. If null, it will
be calculated based on the source URI.
setSourceURI(URI) Method
public void setSourceURI(URI
source)
Set the source URI explicitly. Not all subclasses honor this.
Parameters
-
source
- The URI that this action will use as a source when generating
a file. If this is null, the source will come from the workspace tree or active
document, depending on the specific subclass being used.
showError(String) Method
protected void showError(String
error)
Show an error during autogeneration.
Parameters
-
error
- the description of the error.
staticGetSrc(Reader, IFile) Method
public static String
staticGetSrc(Reader
in,
IFile
sourceFile)
Static version of getSrc.