org.hyperic.hq.appdef.server.session
Class ConfigManagerEJBImpl
java.lang.Object
org.hyperic.hq.appdef.server.session.AppdefSessionUtil
org.hyperic.hq.appdef.server.session.AppdefSessionEJB
org.hyperic.hq.appdef.server.session.ConfigManagerEJBImpl
- All Implemented Interfaces:
- java.io.Serializable, javax.ejb.EnterpriseBean, javax.ejb.SessionBean
public class ConfigManagerEJBImpl
- extends AppdefSessionEJB
- implements javax.ejb.SessionBean
- See Also:
- Serialized Form
Field Summary |
protected org.apache.commons.logging.Log |
log
|
Method Summary |
void |
clearValidationError(AuthzSubject subject,
AppdefEntityID id)
Clear the validation error string for a config response, indicating
that the current config is valid |
boolean |
configureResponse(AuthzSubject subject,
ConfigResponseDB existingConfig,
AppdefEntityID appdefID,
byte[] productConfig,
byte[] measurementConfig,
byte[] controlConfig,
byte[] rtConfig,
java.lang.Boolean userManaged,
boolean force)
|
ConfigResponseDB |
createConfigResponse(byte[] productResponse,
byte[] measResponse,
byte[] controlResponse,
byte[] rtResponse)
|
void |
ejbActivate()
|
void |
ejbCreate()
|
void |
ejbPassivate()
|
void |
ejbRemove()
|
ConfigResponseDB |
getConfigResponse(AppdefEntityID id)
Get the ConfigResponse for the given ID, creating it if it does not
already exist. |
ConfigResponse |
getMergedConfigResponse(AuthzSubject subject,
java.lang.String productType,
AppdefEntityID id,
boolean required)
Get a config response object merged through the hierarchy. |
static org.hyperic.hq.appdef.shared.ConfigManagerLocal |
getOne()
|
java.lang.String |
getPluginName(AppdefEntityID id)
|
AppdefEntityID |
setConfigResponse(AuthzSubject subject,
AppdefEntityID id,
ConfigResponse response,
java.lang.String type,
boolean sendConfigEvent)
Set the config response for an entity/type combination. |
void |
setValidationError(AuthzSubject subject,
AppdefEntityID id,
java.lang.String validationError)
Update the validation error string for a config response |
void |
updateAppdefEntities(java.lang.String pluginName,
TypeInfo[] entities)
Update the appdef entities based on TypeInfo |
Methods inherited from class org.hyperic.hq.appdef.server.session.AppdefSessionEJB |
changeOwner, checkAIScanPermission, checkAlertingPermission, checkAlertingScope, checkControlPermission, checkCreateChildPermission, checkCreatePlatformPermission, checkModifyPermission, checkMonitorPermission, checkPermission, checkPermission, checkRemovePermission, checkViewPermission, createAuthzResource, createAuthzResource, deleteCustomProperties, filterResourceTypes, filterViewableServers, getApplicationPrototypeResourceType, getApplicationResourceType, getAuthzResourceType, getGroupResourceType, getInitialContext, getOperationByName, getOverlord, getPlatformPrototypeResourceType, getPlatformResourceType, getResourcePermissions, getResourceType, getRootResourceType, getServerPrototypeResourceType, getServerResourceType, getServiceCluster, getServicePrototypeResourceType, getServiceResourceType, getSessionContext, getViewableApplications, getViewableGroups, getViewablePlatformPKs, getViewablePlatforms, getViewableServers, getViewableServiceInventory, getViewableServices, removeAuthzResource, rollback, setSessionContext |
Methods inherited from class org.hyperic.hq.appdef.server.session.AppdefSessionUtil |
findResourceType, findResourceType, getAgentDAO, getAIQManagerLocal, getApplicationDAO, getApplicationManager, getConfigManager, getConfigResponseDAO, getCPropManager, getPlatformDAO, getPlatformManager, getPlatformTypeDAO, getResourceManager, getServerDAO, getServerManager, getServerTypeDAO, getServiceDAO, getServiceManager, getServiceTypeDAO |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface javax.ejb.SessionBean |
setSessionContext |
log
protected org.apache.commons.logging.Log log
ConfigManagerEJBImpl
public ConfigManagerEJBImpl()
createConfigResponse
public ConfigResponseDB createConfigResponse(byte[] productResponse,
byte[] measResponse,
byte[] controlResponse,
byte[] rtResponse)
getConfigResponse
public ConfigResponseDB getConfigResponse(AppdefEntityID id)
- Get the ConfigResponse for the given ID, creating it if it does not
already exist.
getPluginName
public java.lang.String getPluginName(AppdefEntityID id)
throws AppdefEntityNotFoundException
- Throws:
AppdefEntityNotFoundException
getMergedConfigResponse
public ConfigResponse getMergedConfigResponse(AuthzSubject subject,
java.lang.String productType,
AppdefEntityID id,
boolean required)
throws AppdefEntityNotFoundException,
ConfigFetchException,
EncodingException,
PermissionException
- Get a config response object merged through the hierarchy.
All entities are merged with the product's config response, and
any entity lower than them in the config stack. Config responses
defining a specific attribute will override the same attribute if
it was declared lower in the application stack. Only entities
within the same plugin will be processed, so the most likely
situation is a simple service + server + product or server + product
merge.
Example: Get the SERVICE MEASUREMENT merged response:
PRODUCT[platform] + MEASUREMENT[platform]
PRODUCT[server] + MEASUREMENT[server] +
PRODUCT[service] + MEASUREMENT[service]
Get the SERVER PRODUCT merged response:
PRODUCT[platform]
PRODUCT[server]
Get the PLATFORM PRODUCT merged response:
PRODUCT[platform]
In addition to the configuration, some inventory properties are also
merged in to aid in auto-configuration done by autoinventory.
For Servers and Services:
The install path of the server is included
For all Resources:
The first non-loopback ip address, fqdn, platform name and type.
- Parameters:
productType
- One of ProductPlugin.*id
- An AppdefEntityID of the object to get config for
- Returns:
- the merged ConfigResponse
- Throws:
AppdefEntityNotFoundException
ConfigFetchException
EncodingException
PermissionException
clearValidationError
public void clearValidationError(AuthzSubject subject,
AppdefEntityID id)
- Clear the validation error string for a config response, indicating
that the current config is valid
setValidationError
public void setValidationError(AuthzSubject subject,
AppdefEntityID id,
java.lang.String validationError)
- Update the validation error string for a config response
- Parameters:
validationError
- The error string that occured during validation.
If this is null, that means that no error occurred and the config is
valid.
setConfigResponse
public AppdefEntityID setConfigResponse(AuthzSubject subject,
AppdefEntityID id,
ConfigResponse response,
java.lang.String type,
boolean sendConfigEvent)
throws ConfigFetchException,
AppdefEntityNotFoundException,
PermissionException,
EncodingException,
javax.ejb.FinderException
- Set the config response for an entity/type combination.
- Parameters:
id
- ID of the object to set the repsonse foresponse
- The responsetype
- One of ProductPlugin.TYPE_*
- Returns:
- an array of entities which may be affected by the change
in configuration. For updates to platform and service configs,
there are no other entities other than the given ID returned.
If a server is updated, the associated services may require
changes. The passed entity will always be returned in the
array.
- Throws:
ConfigFetchException
AppdefEntityNotFoundException
PermissionException
EncodingException
javax.ejb.FinderException
configureResponse
public boolean configureResponse(AuthzSubject subject,
ConfigResponseDB existingConfig,
AppdefEntityID appdefID,
byte[] productConfig,
byte[] measurementConfig,
byte[] controlConfig,
byte[] rtConfig,
java.lang.Boolean userManaged,
boolean force)
updateAppdefEntities
public void updateAppdefEntities(java.lang.String pluginName,
TypeInfo[] entities)
throws javax.ejb.FinderException,
javax.ejb.RemoveException,
javax.ejb.CreateException,
VetoException
- Update the appdef entities based on TypeInfo
- Throws:
javax.ejb.FinderException
javax.ejb.RemoveException
javax.ejb.CreateException
VetoException
getOne
public static org.hyperic.hq.appdef.shared.ConfigManagerLocal getOne()
ejbCreate
public void ejbCreate()
throws javax.ejb.CreateException
- Throws:
javax.ejb.CreateException
ejbRemove
public void ejbRemove()
- Specified by:
ejbRemove
in interface javax.ejb.SessionBean
ejbActivate
public void ejbActivate()
- Specified by:
ejbActivate
in interface javax.ejb.SessionBean
ejbPassivate
public void ejbPassivate()
- Specified by:
ejbPassivate
in interface javax.ejb.SessionBean
Copyright © 2004-2006 Hyperic, Inc. support@hyperic.net, All Rights Reserved.