Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Info

Remove the ole-build.properties from your home directory.
Also there is no need for the impex-build.properties, so ensure its removed from user.home

Commands

  1. Full build

    Info

    Run this from the trunk folder for the very first time to build the dependent projects such as ole-utility.jar etc..

    Needed every iteration or whenever there is a version update.

    No Format
    mvn clean install -DskipTests=true
    Info

    CD into ole folder and run the subsequent commands from within.

  2. Generate the local configuration file configured with default values

    No Format
    mvn generate-resources -Plocal
    1. The above command generates the file

      No Format
      ~/.kuali/ole/fs/configuration.properties
    2. By default, the database vendor is MySQL with the root password set to NONE.
    3. You will need to update this file with the password for the MySQL root user on your system
  3. Reset an OLE FS database

    No Format
    mvn clean initialize -Pdb

Property Loading

Info
titleProperty Loading Order

Order of property loading
1. the properties generated by the ant script (the old way and its still gets run as part of the ant script) - again not to be touched.
2. olefs-default.properties - Within the codebase and should not be touched as it is checked into SVN.
3. configuration.properties (~/.kuali/ole/fs/configuration.properties) - present on the local machine and generated during the generate-resources phase when the local profile is active. Can be modified.
4. If an external configuration file is present. - local to the developer and doesn't get checked in to SVN. So can point to anywhere in the local system where you hava a valid configuration.properties file.

  1. Runtime property resolution is now possible for OLE FS!
  2. This means the exact same war file can be used for development as well as deployment without altering the binary
  3. Automatically loaded external configuration files are used to reconfigure the binary with machine specific configuration
  4. The default external directory used by OLE FS is now based on the system property user.home
  5. To change this you only have to override one property - ole.fs.home
    1. Properties pointing to other directories needed by OLE FS are expanded into their absolute path at runtime
    2. This way only a single property needs to be overridden (instead of all of them)
  6. The following external property locations are automatically checked and loaded, in this order, if they exist
    1. No Format
      ~/.kuali/ole/fs/configuration.properties
    2. If the system property olefs.configuration is set, the properties file it points to is automatically loaded
  7. If the property ole.fs.runtime.property.expansion=true the following actions are also taken
    1. After loading classpath:configuration.properties load classpath:olefs-default.properties
    2. Expand any properties containing placeholders into their fully resolved equivalents

Logging

  1. A default logging configuration is now bundled into OLE FS
  2. This means logging will work out of the box without requiring you to point OLE FS at an external log4j.properties file
  3. You can still override the default log4j configuration if desired
    1. set the property

      No Format
      ole.fs.log4j.override=true
      1. This can be set as a system property
      2. Or as a property in one of the configuration files that gets automatically loaded
    2. create a log4j.properties containing your custom settings at

      No Format
      ~/.kuali/ole/fs/log4j.properties
    3. OLE FS will use settings from the custom log4j.properties
    4. The custom properties file is also monitored by a background thread and reloaded if changes are made
  4. Going forward, any new logging statements added to OLE FS should use the SLF4J logging api
  5. If existing code is modified, log4j logging calls should be replaced by SLF4J logging calls

Properties 

Info

System properties are set by specifying the -D parameter in the VM arguments.

Ex. -Dolefs.configuration=~/.kuali/ole/fs/custom-configuration.properties - This will tell the app to pick the properties from the above specified location

...