Package org.apache.uima.pear.tools
Class LocalInstallationAgent
java.lang.Object
org.apache.uima.pear.tools.LocalInstallationAgent
The
This class may be used in the following ways:
Note: during the localization phase the application creates backup copies of all files in both the
LocalInstallationAgent
allows localizing files of UIMA compliant components
within the single PEAR structure, and verifying localized component's files using UIMA framework
API.
This class may be used in the following ways:
- As a standalone Java application -
java -Xmx512M -DUIMA_HOME=%UIMA_HOME% org.apache.uima.pear.tools.LocalInstallationAgent main_component_root_directory
where themain_component_root_directory
is the path to the root directory of the main component (root directory of the single PEAR structure); - As a Java object -
in this case the caller is expected to set theUIMA_HOME
variable, using thesetUimaHomePath()
method, immediately after creating a new instance of theLocalInstallationAgent
class.
Note: Some TAEs require large heap size, so the '-Xmx[heapSize]' JVM option may be needed.
Localization of component files is performed by using thelocalizeComponent()
method.
Verification of localized files is performed by using theverifyLocalizedComponent()
method.
The applications prints all messages to the standard output and error messages to the standard error output.
metadata/PEAR.properties
file for the
component localization information. Note: during the localization phase the application creates backup copies of all files in both the
conf
and desc
directories, adding the extension ".$" to each
backup file. If the application fails, please make sure all original files in both the
directories are restored from appropriate "*.$" backup copies.-
Field Summary
-
Constructor Summary
ConstructorDescriptionLocalInstallationAgent
(String mainComponentRootPath) Constructs new instance of theLocalInstallationAgent
class, using a given main component root directory. -
Method Summary
Modifier and TypeMethodDescriptionstatic boolean
checkPackageConfig
(Properties packageConfig, InstallationDescriptor insdObject) Checks that a specified PEAR configuration corresponds to a given installation descriptor.boolean
Performs localization of the component files in the 'conf' and 'desc' subdirectories of the specified main root directory, as well as localization of the installation descriptor.static void
localizeComponentFile
(File file, InstallationDescriptor insdObject, Properties packageConfig) Performs localization of a given component file using information from a given installation descriptor and a specified PEAR configuration.protected File[]
Performs localization of the component files in the 'conf' and 'desc' directories by replacing $main_root and $component_id$root macros with the actual path values from the PEAR configuration file.static void
localizeInstallationDescriptor
(InstallationDescriptor insdObject, Properties packageConfig) Performs localization of a given installation descriptor object using information from a specified PEAR configuration.static void
Starts the application.void
setUimaHomePath
(String uimaHomePath) Sets a given UIMA local home directory path.boolean
Restores original files in the 'conf' and 'desc' directories from the back-up copies (with extension '.$').boolean
Performs verification of the localized component by running theInstallationTester
application.
-
Field Details
-
BACKUP_FILE_SUFFIX
- See Also:
-
MAIN_ROOT
- See Also:
-
COMP_ROOT_PREFIX
- See Also:
-
COMP_ROOT_SUFFIX
- See Also:
-
-
Constructor Details
-
LocalInstallationAgent
Constructs new instance of theLocalInstallationAgent
class, using a given main component root directory.- Parameters:
mainComponentRootPath
- The given main component root directory path.
-
-
Method Details
-
checkPackageConfig
public static boolean checkPackageConfig(Properties packageConfig, InstallationDescriptor insdObject) Checks that a specified PEAR configuration corresponds to a given installation descriptor.- Parameters:
packageConfig
- The specified PEAR configuration (Properties
object).insdObject
- The given installation descriptor object.- Returns:
true
if the specified PEAR configuration corresponds to the given installation descriptor,false
otherwise.
-
localizeComponentFile
public static void localizeComponentFile(File file, InstallationDescriptor insdObject, Properties packageConfig) throws IOException Performs localization of a given component file using information from a given installation descriptor and a specified PEAR configuration.- Parameters:
file
- The given component file to be localized.insdObject
- The given installation descriptor object.packageConfig
- The specified PEAR configuration.- Throws:
IOException
- if any I/O exception occurred.
-
localizeInstallationDescriptor
public static void localizeInstallationDescriptor(InstallationDescriptor insdObject, Properties packageConfig) Performs localization of a given installation descriptor object using information from a specified PEAR configuration.- Parameters:
insdObject
- installation descriptor objectpackageConfig
- pear configuration properties
-
main
Starts the application. This application expects the following JVM run-time settings:- -DUIMA_HOME=<local_uima_root_dir>
- Parameters:
args
- main_component_root_dir
-
localizeComponent
Performs localization of the component files in the 'conf' and 'desc' subdirectories of the specified main root directory, as well as localization of the installation descriptor.- Returns:
true
if the localization process completed successfully,false
otherwise.- Throws:
IOException
- if any I/O exception occurred.
-
localizeComponentFiles
Performs localization of the component files in the 'conf' and 'desc' directories by replacing $main_root and $component_id$root macros with the actual path values from the PEAR configuration file. Back-up copies of original files are stored with '.$' extension.- Returns:
- The array of localized files.
- Throws:
IOException
- if any I/O exception occurred.
-
undoComponentLocalization
Restores original files in the 'conf' and 'desc' directories from the back-up copies (with extension '.$').- Returns:
true
if the operation completed successfully,false
otherwise.- Throws:
IOException
- if any I/O exception occurred.
-
verifyLocalizedComponent
public boolean verifyLocalizedComponent() throws IOException, ResourceInitializationException, UIMAExceptionPerforms verification of the localized component by running theInstallationTester
application.- Returns:
true
if the verification completed successfully,false
otherwise.- Throws:
IOException
- if any I/O exception occurred.ResourceInitializationException
- if the specified component cannot be instantiated.UIMAException
- if this exception occurred while identifying UIMA component category.- See Also:
-
setUimaHomePath
Sets a given UIMA local home directory path.- Parameters:
uimaHomePath
- The given UIMA local home directory path.
-