General Description of ProSyst Util Bundle

The ProSyst Util Bundle exports utility classes and services. Their usage facilitates bundle development and reduce CPU and memory consumption at runtime.

Contents:


Bundle Information

Bundle JAR

The JAR file of the ProSyst Util Bundle is putil.jar, and is found in the bundles folder.

There are several modifications of putil.jar: putilmio.jar is intended for used with the Connector Version of the framework; putilnresman.jar contains no requirements for resources and does not use the Resource Manager (this lightens framework operation); and putilnresmanmio.jar contains no requirements for resources, does not use the Resource Manager, and is intended for use with the Connector Version of the framework.

There is a modification of the ProSyst Util Bundle, ProSyst Util Full Bundle, intended for frameworks by other vendors.

Import

The ProSyst Util Bundle imports the following packages necessary for its accurate operation:

Package Exporter Description
com.prosyst.mbs.framework.access System Bundle The Framework Access service for access to useful features, hidden in the framework core.
com.prosyst.mbs.framework.event The Event Thread utility for notifying listeners in asynchronous manner.
com.prosyst.mbs.framework.fm The Fault Manager service for indicating faults
com.prosyst.mbs.framework.logdispatcher The log dispatcher for non-blocking logging
com.prosyst.mbs.framework.packages The Package Admin service for managing package dependencies in the framework
com.prosyst.mbs.framework.resman The Resource Manager service that analyses allocation of memory, CPU time, threads, etc.
com.prosyst.mbs.framework.resman.j9 An extension of the Resource Manager service for the J9 virtual machine
com.prosyst.mbs.framework.tracer The Tracer service for sending log messages to a remote GUI application.
com.prosyst.util.hash Utilities for using long and integer numbers in hashtables.
com.prosyst.util.io I/O utilities for object serialization
com.prosyst.util.pool The object pool utility for reusing objects.
com.prosyst.util.string The char buffer utiltiy for buffering symbols and strings.
com.prosyst.util.text The date format utility for formatting dates according to a specific standard.
com.prosyst.util.time Native equivalent of the System.currentTimeMillis method.
org.osgi.service.cm OSGi Library Bundle The API of the OSGi Configuration Admin service for exporting and managing configurable properties at runtime.
org.osgi.service.log The API of the OSGi Log Service that manages storage of log messages about the runtime status of bundles. This service is implemented by the Log Bundle.
org.osgi.service.packageadmin System Bundle The OSGi Package Admin service for checking package dependencies of bundles.
org.osgi.service.startlevel The OSGi Start Level service for specifying the bundle and framework start levels.
org.osgi.util.tracker OSGi Library Bundle The OSGi Service Tracker utility for tracking services in the framework's service registry.

Export

The ProSyst Util Bundle exports the following packages so that they can be used by other bundles in the framework:

Package Content
com.prosyst.util.beans The beans utility for optimized introspection of JavaBeans
com.prosyst.util.encode Utilities for Base64 and hexadecimal coding, as well as for byte array manipulation
com.prosyst.util.event The Event interfaces for developing a mechanism for remote events exchange.
com.prosyst.util.ini The INI utility for handling INI files.
com.prosyst.util.net The Socket interfaces for developing TCP/IP communication support.
com.prosyst.util.parser The Parser Service for parsing and executing string commands.
com.prosyst.util.pcommands The API to implement to plug commands in the Parser Service.
com.prosyst.util.ref The log utility that stores log messages about the runtime status of a bundle.
com.prosyst.util.system The System Service that provides system information about the framework.
com.prosyst.util.template The HTML template utility that provides HTML templates to use in servlets.
com.prosyst.util.threadpool The Thread Pool Manager service that maintains a pool of reusable threads to execute runnable jobs.
com.prosyst.util.timer The Timer service that sends notification after a specified period of time.
com.prosyst.util.xml Classes for reading and processing XML documents.


Services

The ProSyst Util Bundle provides the following services in the OSGi framework:


Interfaces

The ProSyst Util Bundle offers two sets of interfaces - for implementation of socket factories and for remote delivery of events. See the "Socket Factory and Event Interfaces" document for further details.


Utilities

The ProSyst Util Bundle contains a number of utilities with miscellaneous purpose. For easier navigation, these utilities are described separately in the "Log Reference Utility" and in the "Date, Encode, HTML Template, Security and XML Utilities" documents. In addition, information on the Timer Reference utility is available in the "Thread Pool Manager and Timer" document.


System Properties

The ProSyst Util Bundle uses system properties to configure some of its operation parameters. Since this bundle belongs to the system category, it is recommended that you set its system properties before framework startup. For more details on specifying system properties, refer to "System Properties" from "Getting Started".

Following are the system properties concerning the ProSyst Util Bundle itself. Most of the bundle's services and utilities use their own system properties, which are described in the appropriate document from the "ProSyst Util Bundle" chapter.

System Property Default Value Description
mbs.measurements.full false If true, the ProSyst Util Bundle will log information about the startup time of the bundle.
mbs.measurements.bundles
mbs.putil.debug false Turns on/off generation of debug information about the runtime operation of the ProSyst Util Bundle's components.
mbs.putil.debug.level 1 Sets the level of debug message - messages with level equal or less than the specified one will be created. Currently, the ProSyst Util Bundle supports 1 and 2 debug level. Debug level of 2 will enable debug messages about starting and stopping threads execution in the thread pool.
mbs.putil.console false Prints produced debug information into the framework's text console.


ProSyst Util Bundle