Provider objects are JavaBeans that provide values to the CIM framework by exposing properties. They implement atg.cim.worker.IProvider
, which defines the two methods below. The only difference between an IProvider
object and any other JavaBean is that CIM will always call the provide()
method immediately before accessing any property values.
The IProvider
interface is extremely simple:
package atg.cim.worker; /** * IProvider objects are javabeans that provide values to the CIM Framework by exposing properties. The only real difference between any other nucleus component is that the CIM framework will call the .provide() method before each time a getter is called on a property. **/ public interface IProvider { /** * Called by the CIM Framework before calling provide(). * * @return true if the object can provide values */ public boolean canProvide(); /** * logic to initialize and set object properties should be placed in this method. CIM Framework calls this method each time a value is accessed from this component * @throws ProviderException */ public void provide() throws ProviderException;
Providers can be used to replace values through a CIM plugin, by including the following syntax:
${ProviderID.property}
CIM calls the provide()
method before it replaces the value.