Skip navigation links

Oracle Fusion Middleware Management Java API Reference for Oracle Entitlements Server
11g Release 2 (11.1.2)

E54416-01


oracle.security.opss.config.mgmt
Interface ConfigBean


public interface ConfigBean

The interface that all Configuration Bean's should implement. A Configuration Bean can be used by local management applications and scripts to perform an Online/Offline mode configuration change.

In its first version Config Beans are envisioned only for ServiceInstanceDescriptors and not for other general Jps Configuration elements such as JpsConfiguration, ServiceProviderDescriptor, JpsContext etc. This decision was arrived at during the discussion based on the first draft of the Approach/Architecture document.

A Configuration Bean is expected to have methods at the abstraction level of the Service Domain rather than pure Property getters and setters as represented at the persistence (DAO) layer (for example : configureLDAPIdentityStoreWithLibOvd(), setCacheSize()).

Configuration Beans allow for Online and Offline access and manipulation of the configuration as opposed to pure JMX MBeans which would require a running MBean Server to perform any changes to the configuration.

A Configuration Bean is expected to have information about which changes would require a restart of the service and which pieces of information represent Mandatory properties required by the Service.

The apply() operation on a ConfigBean is expected to be propagate the configuration changes to a running ServiceInstance if the nature of changes are such that the Service Instance can refresh itself with the changed configuration. If the changes require a restart of the service instance then that would be indicated as a result of apply() call.

The operation apply() is an online operation and does not have any effect when invoked in offline mode. It may indicate the same using the returned ConfigChangeStatus object to say the changes were not applied.

Author:
vbkumarjayanti

Method Summary
 void addProperty(java.lang.String name, java.lang.Object value, java.lang.String description)
           
 java.util.concurrent.Future<ConfigChangeStatus> apply()
          Apply a local change to the Service Configuration on the ApplicationServer instance.
 void deleteProperty(java.lang.String name)
           
 ManagementConfiguration getConfigContext()
           
 java.lang.String getName()
           
 boolean hasChanges()
           
 boolean hasUnAppliedChanges()
           
 void modifyProperty(java.lang.String name, java.lang.Object newValue)
           
 java.util.concurrent.Future<ConfigChangeStatus> persist()
          Persist the changes to this ConfigBean to the persistent store.

 

Method Detail

getConfigContext

ManagementConfiguration getConfigContext()
Returns:
the Management Configuration of the Tenant for which this ConfigBean instance was created.

getName

java.lang.String getName()
Returns:
the name of the ConfigBean. In the context of ServiceInstanceDescriptors the name is the same as the corresponding Persistence (DAO) layer ServiceInstanceDescriptorP object.

apply

java.util.concurrent.Future<ConfigChangeStatus> apply()
Apply a local change to the Service Configuration on the ApplicationServer instance. This operation can be invoked on any ManagedServer or the DAS.
Returns:
a Future Object that can be used to query when the Config Changes made by the Config Bean have been successfully consumed by the corresponding Service Instances and the RuntimeConfiguration view.

persist

java.util.concurrent.Future<ConfigChangeStatus> persist()
Persist the changes to this ConfigBean to the persistent store. This should be executed on the DAS and we may need to prevent a persist call on any of the managed servers. The Application Server's file synchronization will then ensure that persistent config change is synchronized to the Managed Server;s upon start of the Cluster. Otherwise an update on Managed Server could be lost during startup synchronization.
Returns:
a Future Object that can be used to query when the Config Changes made by the Config Bean have been successfully persisted.

hasUnAppliedChanges

boolean hasUnAppliedChanges()
Returns:
true if the configuration is dirty and can be applied/persisted. False if it has no un-applied changes. If a persist() operation has been invoked just before a call to this method then this method would return false. If an apply() operation was invoked just before a call to this method then this method would return false.

hasChanges

boolean hasChanges()
Returns:
true if configuration object has changes that can be persisted if required. The changes may or maynot have been applied already. A prior call to apply() would have no effect on the return value of this method. A prior call to persist() would cause this method to return false.

addProperty

void addProperty(java.lang.String name,
                 java.lang.Object value,
                 java.lang.String description)
Parameters:
name - the name of a new configuration property to be added to the configuration of this ConfigBean. A ConfigBean holds the Management View of a particular service's instance configuration.
value - the value of the property
description - a description of the property. TODO : should the value be a String or an Object. TODO : need to throw exception if the property already exists.

modifyProperty

void modifyProperty(java.lang.String name,
                    java.lang.Object newValue)
Parameters:
name - name the name of a new configuration property to be deleted
newValue - the newvalue for the property TODO: throw exception if property does not exist

deleteProperty

void deleteProperty(java.lang.String name)
Parameters:
name - of the property to be deleted from the service's instance configuration TODO : throw exception if the property does not exist.

Skip navigation links

Oracle Fusion Middleware Management Java API Reference for Oracle Entitlements Server
11g Release 2 (11.1.2)

E54416-01


Copyright © 2011, 2015, Oracle and/or its affiliates. All rights reserved.