microsoft.exchange.webservices.data.core.service.schema
Class ServiceObjectSchema

java.lang.Object
  extended by microsoft.exchange.webservices.data.core.service.schema.ServiceObjectSchema
All Implemented Interfaces:
Iterable<PropertyDefinition>
Direct Known Subclasses:
CalendarResponseObjectSchema, CancelMeetingMessageSchema, ConversationSchema, FolderSchema, ItemSchema, PostReplySchema, ResponseMessageSchema, ResponseObjectSchema

public abstract class ServiceObjectSchema
extends Object
implements Iterable<PropertyDefinition>

Represents the base class for all item and folder schema.


Field Summary
static PropertyDefinition extendedProperties
          Defines the ExtendedProperties property.
 
Constructor Summary
protected ServiceObjectSchema()
          Initializes a new instance.
 
Method Summary
protected static void addSchemaPropertiesToDictionary(Class<?> type, Map<String,PropertyDefinitionBase> propDefDictionary)
          Adds schema property to dictionary.
protected static void addSchemaPropertyNamesToDictionary(Class<?> type, Map<PropertyDefinition,String> propertyNameDictionary)
          Adds the schema property names to dictionary.
static PropertyDefinitionBase findPropertyDefinition(String uri)
          Finds the property definition.
 List<PropertyDefinition> getFirstClassProperties()
          Gets the list of first class property for this service object type.
 List<PropertyDefinition> getFirstClassSummaryProperties()
          Gets the list of first class summary property for this service object type.
static void initializeSchemaPropertyNames()
          Initialize schema property names.
 Iterator<PropertyDefinition> iterator()
          Returns an iterator over a set of elements of type T.
protected  void registerIndexedProperty(IndexedPropertyDefinition indexedProperty)
          Registers an indexed property.
protected  void registerInternalProperty(PropertyDefinition property)
          Registers an internal schema property.
protected  void registerProperties()
          Registers property.
protected  void registerProperty(PropertyDefinition property)
          Registers a schema property that will be visible to developers.
 boolean tryGetPropertyDefinition(String xmlElementName, OutParam<PropertyDefinition> propertyDefinitionOutParam)
          Tries to get property definition.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

extendedProperties

public static final PropertyDefinition extendedProperties
Defines the ExtendedProperties property.

Constructor Detail

ServiceObjectSchema

protected ServiceObjectSchema()
Initializes a new instance.

Method Detail

addSchemaPropertiesToDictionary

protected static void addSchemaPropertiesToDictionary(Class<?> type,
                                                      Map<String,PropertyDefinitionBase> propDefDictionary)
Adds schema property to dictionary.

Parameters:
type - Schema type.
propDefDictionary - The property definition dictionary.

addSchemaPropertyNamesToDictionary

protected static void addSchemaPropertyNamesToDictionary(Class<?> type,
                                                         Map<PropertyDefinition,String> propertyNameDictionary)
Adds the schema property names to dictionary.

Parameters:
type - The type.
propertyNameDictionary - The property name dictionary.

findPropertyDefinition

public static PropertyDefinitionBase findPropertyDefinition(String uri)
Finds the property definition.

Parameters:
uri - The URI.
Returns:
Property definition.

initializeSchemaPropertyNames

public static void initializeSchemaPropertyNames()
Initialize schema property names.


registerProperty

protected void registerProperty(PropertyDefinition property)
Registers a schema property that will be visible to developers.

Parameters:
property - The property to register.

registerInternalProperty

protected void registerInternalProperty(PropertyDefinition property)
Registers an internal schema property.

Parameters:
property - The property to register.

registerIndexedProperty

protected void registerIndexedProperty(IndexedPropertyDefinition indexedProperty)
Registers an indexed property.

Parameters:
indexedProperty - The indexed property to register.

registerProperties

protected void registerProperties()
Registers property.


getFirstClassProperties

public List<PropertyDefinition> getFirstClassProperties()
Gets the list of first class property for this service object type.

Returns:
the first class property

getFirstClassSummaryProperties

public List<PropertyDefinition> getFirstClassSummaryProperties()
Gets the list of first class summary property for this service object type.

Returns:
the first class summary property

tryGetPropertyDefinition

public boolean tryGetPropertyDefinition(String xmlElementName,
                                        OutParam<PropertyDefinition> propertyDefinitionOutParam)
Tries to get property definition.

Parameters:
xmlElementName - Name of the XML element.
propertyDefinitionOutParam - The property definition.
Returns:
True if property definition exists.

iterator

public Iterator<PropertyDefinition> iterator()
Returns an iterator over a set of elements of type T.

Specified by:
iterator in interface Iterable<PropertyDefinition>
Returns:
an Iterator.


Copyright © 2012–2015 Microsoft. All rights reserved.