com.novell.sentinel.client.bean
Class BeanMetaData<B extends SentinelBean>

java.lang.Object
  extended by com.novell.sentinel.client.bean.BeanMetaData<B>
Type Parameters:
B - The type of the bean (e.g., IdentityBean)
Direct Known Subclasses:
AccountBeanMetaData, AdvAttackDetailsBeanMetaData, AdvisorContainerBeanMetaData, AdvisorEventDataBeanMetaData, AnnotationBeanMetaData, AssetDataBeanMetaData, AssetDataContainerBeanMetaData, AssetEventDataBeanMetaData, AttachmentBeanMetaData, AttackSummaryBeanMetaData, AttributeSchemaBeanMetaData, AuthenticationConfigBeanMetaData, AuthenticationTestBeanMetaData, BackupCommandBeanMetaData, CollectorBeanMetaData, CollectorPropertyContainerBeanMetaData, ConsoleSLMBeanMetaData, ContactDataBeanMetaData, CorrelatedEventsBeanMetaData, DatabaseConnectionConfigBeanMetaData, DatabaseIndexColumnBeanMetaData, DatabasePlatformConnPropertyBeanMetaData, DatabasePlatformInfoBeanMetaData, DatabasePlatformJdbcPropertyBeanMetaData, DatabasePlatformMiscPropertyBeanMetaData, DatabasePlatformPropertyBeanMetaData, DatabaseTableBeanMetaData, DatabaseTableColumnBeanMetaData, DeltaCountsBeanMetaData, DiskUsageBeanMetaData, DistSearchAuthBeanMetaData, EsmNodeConfigurationBeanMetaData, EventBeanMetaData, EventDataSyncPolicyBeanMetaData, EventDataSyncPolicyMetaDataBeanMetaData, EventDataSyncScheduleItemBeanMetaData, EventFieldToColumnMappingBeanMetaData, EventSearchBeanMetaData, EventSearchStatusBeanMetaData, EventSourceBeanMetaData, EventSourceConfigurationBeanMetaData, EventSourceGroupBeanMetaData, EventSourceManagerBeanMetaData, EventSourceManagerConfigurationBeanMetaData, EventSourceServerBeanMetaData, EventSourceServerConfigurationBeanMetaData, ExternalDataBeanMetaData, GlobalDataSyncConfigBeanMetaData, GlobalDataSyncMetaDataBeanMetaData, GlobalFilterBeanMetaData, HistoricalDiskUsageBeanMetaData, IdentityBeanMetaData, IdentityExtAttributesBeanMetaData, IncidentBeanMetaData, IncidentCategoryBeanMetaData, IncidentsEventsBeanMetaData, IndexedLogPartitionBeanMetaData, IndexedLogRetentionPolicyBeanMetaData, IndexedLogRetentionPolicyMetaDataBeanMetaData, IpDataBeanMetaData, ItemBeanMetaData, ObjectSchemaBeanMetaData, PermissionBeanMetaData, PluginBeanMetaData, PortReferenceBeanMetaData, PropertyBeanMetaData, ProtocolReferenceBeanMetaData, SchemaPermBeanMetaData, SentinelBeanMetaData, SentinelConfigurationBeanMetaData, SentinelHostBeanMetaData, SoftAssetDataBeanMetaData, TagBeanMetaData, TargetSLMBeanMetaData, TrustBeanMetaData, TrustTypeBeanMetaData, UserBeanMetaData, UserGroupBeanMetaData, UserGroupPermissionBeanMetaData, UserPermissionsBeanMetaData, UserSessionBeanMetaData, VulnerabilityBeanMetaData, VulnerabilityCodeBeanMetaData, VulnerabilityContainerBeanMetaData, VulnerabilityEventDataBeanMetaData, VulnerabilityInfoBeanMetaData, VulnerabilityRsrcBeanMetaData, VulnerabilityScannerBeanMetaData, WFEProcessDefinitionInfoBeanMetaData, WorkflowInfoBeanMetaData

public abstract class BeanMetaData<B extends SentinelBean>
extends Object

Class that contains information about the data items represented by a SentinelBean implementation.


Field Summary
static String LINK
          Special value used to set the value of a bean's link URL.
 
Constructor Summary
protected BeanMetaData(String _name, boolean isStandalone, Collection<? extends BeanFieldMetaData> _fields)
           
 
Method Summary
 String getBeanName()
          Return the "bean name" of the data item (e.g., "identity").
 BeanFieldMetaData getFieldDefinition(String fieldName)
          Get the metadata for a field defined in the Sentinel data item represented by this.
 Iterable<BeanFieldMetaData> getFieldDefinitions()
          Get the metadata for each field.
 String[] getURLComponents()
          Return the URL path components specific to the Sentinel data item type represented by this instance of metadata.
 boolean isStandalone()
          Return true if the bean type represents a Sentinel data item type that is addressable via URL.
abstract  B newBean()
          Create a new instance of the concrete SentinelBean implementation.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

LINK

public static final String LINK
Special value used to set the value of a bean's link URL. The link URL is considered opaque and read-only, but the de-serialization code must be able to set the value.

See Also:
Constant Field Values
Constructor Detail

BeanMetaData

protected BeanMetaData(String _name,
                       boolean isStandalone,
                       Collection<? extends BeanFieldMetaData> _fields)
Method Detail

getBeanName

public String getBeanName()
Return the "bean name" of the data item (e.g., "identity").

Returns:
The name.

isStandalone

public boolean isStandalone()
Return true if the bean type represents a Sentinel data item type that is addressable via URL. In other words, data item types that stand on their own rather than that are contained within other data items.

Returns:
true if the bean is standalone.

newBean

public abstract B newBean()
Create a new instance of the concrete SentinelBean implementation. Use this when an instance is needed to create new data item which will be created by an HTTP POST request.

Returns:
A new, empty bean instance.

getURLComponents

public String[] getURLComponents()
Return the URL path components specific to the Sentinel data item type represented by this instance of metadata. These do not include the base URL path components of the Sentinel DataObject REST API.

Returns:
The URL path component(s).

getFieldDefinition

public BeanFieldMetaData getFieldDefinition(String fieldName)
Get the metadata for a field defined in the Sentinel data item represented by this.

Parameters:
fieldName - The name of the field.
Returns:
The metadata, or null if a field so-named does not exist in the Sentinel data item.

getFieldDefinitions

public Iterable<BeanFieldMetaData> getFieldDefinitions()
Get the metadata for each field.

Returns:
An Iterable, never null.

toString

public String toString()
Overrides:
toString in class Object