Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Enterprise Scheduler Service
11g Release 1 (11.1.1.6.3)
E26229-05


oracle.as.scheduler
Class BaseMetadataType<METADATA_TYPE extends BaseMetadata<METADATA_TYPE>>

java.lang.Object
  extended by oracle.as.scheduler.BaseMetadataType<METADATA_TYPE>

All Implemented Interfaces:
java.io.Serializable
Direct Known Subclasses:
BaseMetadataType.ExclusionsDefinitionType, BaseMetadataType.IncompatibilityType, BaseMetadataType.JobDefinitionType, BaseMetadataType.JobSetType, BaseMetadataType.JobTypeType, BaseMetadataType.ScheduleType, BaseMetadataType.TriggerType, BaseMetadataType.WorkAssignmentType, BaseMetadataType.WorkshiftType

public abstract class BaseMetadataType<METADATA_TYPE extends BaseMetadata<METADATA_TYPE>>
extends java.lang.Object
implements java.io.Serializable

BaseMetadataType is an enum-like class. In order to get the full power of type safety from the generics, we use our own class instead of a Java Enum, which are more limited in their use of generics. The generics in question tie into the BaseMetadata generics which are bound by every base type of ESS Metadata (JobType, Schedule, etc). This class is meant to contain all the slight differences between how the individual types of metadata are handled. For example, there are many places where a switch based on the MetadataObjectType was being done. This class aims to replace those fragile switches with a more robust and type-safe solution.

Since:
release specific (what release of product did this appear in)
Version:
$Header: ess/src/oracle/as/scheduler/BaseMetadataType.java /main/19 2010/12/14 14:28:34 ddavison Exp $
Author:
dcraft
See Also:
Serialized Form

Nested Class Summary
static class BaseMetadataType.ExclusionsDefinitionType
           
static class BaseMetadataType.IncompatibilityType
           
static class BaseMetadataType.JobDefinitionType
           
static class BaseMetadataType.JobSetType
           
static class BaseMetadataType.JobTypeType
           
static class BaseMetadataType.ScheduleType
           
static class BaseMetadataType.TriggerType
           
static class BaseMetadataType.WorkAssignmentType
           
static class BaseMetadataType.WorkshiftType
           

 

Field Summary
static BaseMetadataType.ExclusionsDefinitionType EXCLUSIONS_DEFINITION
           
static BaseMetadataType.IncompatibilityType INCOMPATIBILITY
           
static BaseMetadataType.JobDefinitionType JOB_DEFINITION
           
static BaseMetadataType.JobSetType JOB_SET
           
static BaseMetadataType.JobTypeType JOB_TYPE
           
static BaseMetadataType.ScheduleType SCHEDULE
           
static BaseMetadataType.TriggerType TRIGGER
           
static BaseMetadataType<Trigger> TRIGGER_EXPRESSION
           
static BaseMetadataType.WorkAssignmentType WORK_ASSIGNMENT
           
static BaseMetadataType.WorkshiftType WORKSHIFT
           

 

Constructor Summary
BaseMetadataType()
           

 

Method Summary
abstract  java.util.Set<MetadataPermission.Action> adjustPrivilegesNeedToBeChecked(java.util.Set<MetadataPermission.Action> actions)
           
abstract  METADATA_TYPE[] getArray(int size)
           
static BaseMetadataType getBaseMetadataType(MetadataObjectId.MetadataObjectType type)
           
abstract  java.lang.Class<METADATA_TYPE> getMetadataClass()
           
abstract  MetadataObjectId.MetadataObjectType getMetadataObjectType()
           
 java.lang.String getMetadataSubDirectory()
           
 oracle.mds.query.MOTypeCondition getMOTypeCondition()
           
 oracle.mds.query.MOTypeCondition getMOTypeCondition(oracle.mds.query.Condition c)
           
 java.lang.String getSchemaLocation()
           
abstract  oracle.as.scheduler.xml.MetadataXmlizer<METADATA_TYPE> getXmlizer()
           
abstract  java.lang.String getXmlRootTag()
           
<T extends BaseMetadata<T>>
void
onAdd(MetadataObjectId objectId, T baseMetadata, oracle.as.scheduler.localization.EssMessages messages, oracle.as.scheduler.localization.EssMessages logger)
           
 void onDelete(MetadataObjectId objectId, oracle.as.scheduler.localization.EssMessages messages, oracle.as.scheduler.localization.EssMessages logger)
           
<T extends BaseMetadata<T>>
void
onUpdate(MetadataObjectId objectId, T baseMetadata, oracle.as.scheduler.localization.EssMessages messages, oracle.as.scheduler.localization.EssMessages logger)
           
 java.lang.String toString()
           
static BaseMetadataType[] values()
           
 void vetoCustomize(MetadataObjectId objectId, oracle.as.scheduler.localization.EssMessages messages, oracle.as.scheduler.localization.EssMessages logger)
           
 void vetoDelete(MetadataObjectId objectId, oracle.as.scheduler.localization.EssMessages messages, oracle.as.scheduler.localization.EssMessages logger)
           
<T extends BaseMetadata<T>>
void
vetoUpdate(MetadataObjectId objectId, T metadata, oracle.as.scheduler.localization.EssMessages messages, oracle.as.scheduler.localization.EssMessages logger)
           

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

 

Field Detail

INCOMPATIBILITY

public static final BaseMetadataType.IncompatibilityType INCOMPATIBILITY

EXCLUSIONS_DEFINITION

public static final BaseMetadataType.ExclusionsDefinitionType EXCLUSIONS_DEFINITION

JOB_DEFINITION

public static final BaseMetadataType.JobDefinitionType JOB_DEFINITION

JOB_SET

public static final BaseMetadataType.JobSetType JOB_SET

JOB_TYPE

public static final BaseMetadataType.JobTypeType JOB_TYPE

SCHEDULE

public static final BaseMetadataType.ScheduleType SCHEDULE

TRIGGER

public static final BaseMetadataType.TriggerType TRIGGER

TRIGGER_EXPRESSION

public static final BaseMetadataType<Trigger> TRIGGER_EXPRESSION

WORK_ASSIGNMENT

public static final BaseMetadataType.WorkAssignmentType WORK_ASSIGNMENT

WORKSHIFT

public static final BaseMetadataType.WorkshiftType WORKSHIFT

Constructor Detail

BaseMetadataType

public BaseMetadataType()

Method Detail

getBaseMetadataType

public static final BaseMetadataType getBaseMetadataType(MetadataObjectId.MetadataObjectType type)

values

public static final BaseMetadataType[] values()

getMetadataClass

public abstract java.lang.Class<METADATA_TYPE> getMetadataClass()

getArray

public abstract METADATA_TYPE[] getArray(int size)

getMetadataObjectType

public abstract MetadataObjectId.MetadataObjectType getMetadataObjectType()

getXmlRootTag

public abstract java.lang.String getXmlRootTag()

getXmlizer

public abstract oracle.as.scheduler.xml.MetadataXmlizer<METADATA_TYPE> getXmlizer()

adjustPrivilegesNeedToBeChecked

public abstract java.util.Set<MetadataPermission.Action> adjustPrivilegesNeedToBeChecked(java.util.Set<MetadataPermission.Action> actions)

toString

public final java.lang.String toString()
Overrides:
toString in class java.lang.Object

getSchemaLocation

public final java.lang.String getSchemaLocation()

getMetadataSubDirectory

public java.lang.String getMetadataSubDirectory()

vetoDelete

public void vetoDelete(MetadataObjectId objectId,
                       oracle.as.scheduler.localization.EssMessages messages,
                       oracle.as.scheduler.localization.EssMessages logger)
                throws MetadataServiceException,
                       MetadataIllegalOperationException
Throws:
MetadataServiceException
MetadataIllegalOperationException

vetoCustomize

public void vetoCustomize(MetadataObjectId objectId,
                          oracle.as.scheduler.localization.EssMessages messages,
                          oracle.as.scheduler.localization.EssMessages logger)
                   throws MetadataServiceException,
                          MetadataIllegalOperationException
Throws:
MetadataServiceException
MetadataIllegalOperationException

vetoUpdate

public <T extends BaseMetadata<T>> void vetoUpdate(MetadataObjectId objectId,
                                                   T metadata,
                                                   oracle.as.scheduler.localization.EssMessages messages,
                                                   oracle.as.scheduler.localization.EssMessages logger)
                throws MetadataServiceException,
                       MetadataIllegalOperationException
Throws:
MetadataServiceException
MetadataIllegalOperationException

onAdd

public <T extends BaseMetadata<T>> void onAdd(MetadataObjectId objectId,
                                              T baseMetadata,
                                              oracle.as.scheduler.localization.EssMessages messages,
                                              oracle.as.scheduler.localization.EssMessages logger)
           throws MetadataServiceException
Throws:
MetadataServiceException

onDelete

public void onDelete(MetadataObjectId objectId,
                     oracle.as.scheduler.localization.EssMessages messages,
                     oracle.as.scheduler.localization.EssMessages logger)
              throws MetadataServiceException
Throws:
MetadataServiceException

onUpdate

public <T extends BaseMetadata<T>> void onUpdate(MetadataObjectId objectId,
                                                 T baseMetadata,
                                                 oracle.as.scheduler.localization.EssMessages messages,
                                                 oracle.as.scheduler.localization.EssMessages logger)
              throws MetadataServiceException
Throws:
MetadataServiceException

getMOTypeCondition

public final oracle.mds.query.MOTypeCondition getMOTypeCondition()

getMOTypeCondition

public final oracle.mds.query.MOTypeCondition getMOTypeCondition(oracle.mds.query.Condition c)

Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Enterprise Scheduler Service
11g Release 1 (11.1.1.6.3)
E26229-05


Copyright © 2008, 2012 Oracle. All rights reserved.