Documentation for FileInstall
-----------------------------
Key: FELIX-515
URL: https://issues.apache.org/jira/browse/FELIX-515
Project: Felix
Issue Type: Improvement
Components: File Install
Reporter: Peter Kriens
Priority: Trivial
This is the documentation of File Install, for legal reasons put in here so
they can be used by the project with the Apache Software License 2.0
FileInstall is a directory based management agent. It uses a directory in the
file system to install+start a bundle when it is first place there. It updates
the bundle when you update the bundle file in that directory, and when the file
is deleted it will stop+uninstall the bundle.
FileInstall can do the same for configuration configuration files. This
surprisingly simple bundle is very powerful because there are so many programs
that work with the file system. For example:
* If you use ant, you can just copy the resulting bundle to the watched
directory.
* You can download bundles from the web and directly install them without
any extra effort.
* You can easily drag and drop bundles in and out of the framework.
Setup
The bundle runs on any framework. For its configuration, it will use the
following system properties:
Property Default Description
aQute.fileinstall.poll 2000 ms Number of milliseconds between 2 polls of the
directory
aQute.fileinstall.dir ./load The name of the directory to watch
aQute.fileinstall.debug -1 Debug information
Once started, the values of these properties are printed to the console.
Configurations
Configuration files are plain property files (java.util.Property). The format
is simple:
file ::= ( header | comment ) *
header ::= <header> ( ':' | '=' )
<value> ( '\<nl> <value> ) *
comment ::= '#' <any>
Notice that this model only supports String properties.
For example:
# default port
ftp.port = 21
fto
Configuration file names are related to the PID and factory PID. The structure
of the file name is as follows:
filename ::= <pid> ( '-' <subname> )? '.cfg'
If the form is <pid>.cfg, the file contains the properties for a Managed
Service. The <pid> is then the PID of the Managed Service. See the
Configuration Admin service for details.
When a Managed Service Factory is used, the situation is different. The <pid>
part then describes the PID of the Managed Service Factory. You can pick any
<subname>, this bundle will then create an instance for the factory for each
unique name. For example:
com.acme.xyz.cfg // configuration for Managed Service
// com.acme.xyz
com.acme.abc-default.cfg // Managed Service Factory,
// creates an instance for com.acme.abc
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.