{ } }
Tree PREV CLASS NEXT CLASS FRAMES NO FRAMES SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD com.ibm.workplace.wcm.api
Interface ContentComponentContainer
- All Superinterfaces:
- Document, Editable, EditableItem, Item, Localized, WCMApiObject, WorkflowedDocument
- All Known Subinterfaces:
- Content, ContentPrototype, PortalPage, Site, SiteArea, SiteAreaPrototype, SiteFrameworkContainer
public interface ContentComponentContainer- extends Editable, WorkflowedDocument
The root interface for the content component container hierarchy. A ContentComponentContainer represents a container for ContentComponent objects.
note: since v6.0.0, a ContentComponent is referred to as an "Element" in the Authoring UI.
The
ContentComponentContainer interface includes methods for retrieving and setting ContentComponent objects. Components cannot be added or removed from a ContentComponentContainer through the API. The API only allows an update of a ContentComponent object that already exists in this ContentComponentContainer. Passing a null argument to a method of this class will result in a NullPointerException, unless stated otherwise.
Method Summary void addCategoryIds(DocumentId<? extends Category>[] categoryIds)
Add categories to this content.void addComponent(java.lang.String name, ContentComponent component)
Adds the ContentComponent with the name specified by the argument to this ContentComponentContainer.ContentComponentIterator componentIterator()
Return an iterator of all ContentComponent objects in this ContentComponentContainer.
<T extends ContentComponent>
TcreateComponent(java.lang.String name, DocumentType<T> componentType)
Creates a new ContentComponent of the specified type with the name specified by the argument and associates it with this ContentComponentContainer.DocumentId<? extends Category>[] getCategoryIds()
Return array of IDs for the categories associated with this content.DocumentId<? extends Category>[] getCombinedCategoryIds()
Return array of IDs for the all categories associated with this content.ContentComponent getComponent(java.lang.String name)
Retrieves a ContentComponent with a name specified by the argument from this ContentComponentContainer.ContentComponent getComponentByReference(java.lang.String name)
Retrieves a reference to a ContentComponent with a name specified by the argument from this ContentComponentContainer; ContentComponents returned by this method must be treated as read-only.java.lang.String[] getComponentNames()
Return a list of component names for all ContentComponents in this ContentComponentContainer.java.lang.String[] getKeywords()
Return an array of keywords associated with this content.boolean hasComponent(java.lang.String name)
Returns true if and only if the argument is not null and a ContentComponent with a name specified by the argument exists in this ContentComponentContainer.void removeCategoryIds(DocumentId<? extends Category>[] categoryIds)
Remove categories from this content.void removeComponent(java.lang.String name)
Removes the ContentComponent with the name specified by the argument in this ContentComponentContainer.void setComponent(java.lang.String name, ContentComponent component)
Sets the ContentComponent with the name specified by the argument in this ContentComponentContainer.void setKeywords(java.lang.String[] keywords)
Sets the keywords for this Content document.
Methods inherited from interface com.ibm.workplace.wcm.api.Item getCreationDate, getDescription, getIdentity, getModifiedDate, getName, getTitle
Methods inherited from interface com.ibm.portal.Localized getLocales
Methods inherited from interface com.ibm.workplace.wcm.api.EditableItem setDescription, setName, setTitle
Method Detail componentIterator
ContentComponentIterator componentIterator()
- Return an iterator of all ContentComponent objects in this ContentComponentContainer.
Note: This method will return null entries for unsupported content components
Note: The iterator this method returns contains a copy of each ContentComponent rather than a reference to each ContentComponent
- Returns:
- a content component iterator
hasComponent
boolean hasComponent(java.lang.String name)
- Returns true if and only if the argument is not null and a ContentComponent with a name specified by the argument exists in this ContentComponentContainer.
Note: This method is case sensitive.
- Parameters:
- name - the name of the ContentComponent
- Returns:
- true if the argument is not null and a ContentComponent with a name matching the argument exists in this ContentComponentContainer; false otherwise.
getComponent
ContentComponent getComponent(java.lang.String name) throws ComponentNotFoundException
- Retrieves a ContentComponent with a name specified by the argument from this ContentComponentContainer.
The hasComponent() method should be called first to ensure that a ContentComponent with the specified name exists, otherwise an exception may be thrown.
Note: This method is case sensitive.
Note: If the requested ContentComponent is to be used during rendering only (or simply inspected) and will never be modified, then the getComponentByReference method can be used instead to speed up performance
- Parameters:
- name - the name of the ContentComponent to retrieve
- Returns:
- a copy of the specified ContentComponent
- Throws:
- ComponentNotFoundException - if a ContentComponent with the specified name cannot be found
getComponentByReference
ContentComponent getComponentByReference(java.lang.String name) throws ComponentNotFoundException
Retrieves a reference to a ContentComponent with a name specified by the argument from this ContentComponentContainer; ContentComponents returned by this method must be treated as read-only.
The hasComponent() method should be called first to ensure that a ContentComponent with the specified name exists, otherwise an exception may be thrown.
Note: This method is case sensitive.
Warning: Unlike the getComponent() method, this method doesn't clone the internal ContentComponent and therefore should only be used during rendering. If you need to change the ContentComponent OR copy it to another Document then use the getComponent() method instead
- Parameters:
- name - the name of the ContentComponent to retrieve
- Returns:
- the actual ContentComponent as specified by the name
- Throws:
- ComponentNotFoundException - if a ContentComponent with the specified name cannot be found
setComponent
void setComponent(java.lang.String name, ContentComponent component) throws ComponentNotFoundException, IllegalTypeChangeException
- Sets the ContentComponent with the name specified by the argument in this ContentComponentContainer.
Note: The name and type of ContentComponent passed in as arguments to this method must exactly match the name and type of an existing ContentComponent in this ContentComponentContainer. This method only allows an update of an existing component.
- Parameters:
- name - name of component to be updated
- component - updated copy of component
- Throws:
- ComponentNotFoundException - if no ContentComponent with the given name exists in this ContentComponentContainer
- IllegalTypeChangeException - if the ContentComponent passed in as an argument is a different type than the existing component with the given name
addComponent
void addComponent(java.lang.String name, ContentComponent component) throws DuplicateComponentException
- Adds the ContentComponent with the name specified by the argument to this ContentComponentContainer.
Note: The name of ContentComponent passed in as an argument to this method must not match the name of an existing ContentComponent in this ContentComponentContainer. This method does not allow the update of an existing component.
Note: The supplied ContentComponent must be either a new ContentComponent or a clone of an existing ContentComponent, components returned from the getComponentByReference() method must not be used as arguments to this method
- Parameters:
- name - name of component to be added
- component - component to be added
- Throws:
- DuplicateComponentException - if a ContentComponent with the given name exists in this ContentComponentContainer
createComponent
<T extends ContentComponent> T createComponent(java.lang.String name, DocumentType<T> componentType) throws DuplicateComponentException, IllegalDocumentTypeException, DocumentCreationException
- Creates a new ContentComponent of the specified type with the name specified by the argument and associates it with this ContentComponentContainer.
Note: The association of the new ContentComponent and any changes to the ContentComponent will not be saved until this ContentComponentContainer is saved
Note: The name of ContentComponent passed in as an argument to this method must not match the name of an existing ContentComponent in this ContentComponentContainer. This method does not allow the update of an existing component.
Note: The type of ContentComponent passed in as an argument to this method must be a valid content component type, such as:
- DocumentTypes.DateComponent
- DocumentTypes.FileComponent
- DocumentTypes.HTMLComponent
- DocumentTypes.ImageComponent
- DocumentTypes.JSPComponent
- DocumentTypes.LinkComponent
- DocumentTypes.NumericComponent
- DocumentTypes.OptionSelectionComponent
- DocumentTypes.ReferenceComponent
- DocumentTypes.RichTextComponent
- DocumentTypes.ShortTextComponent
- DocumentTypes.TextComponent
- DocumentTypes.UserSelectionComponent
- Parameters:
- name - name of component to be added
- componentType - type of component to be added
- Returns:
- the actual ContentComponent that was created
- Throws:
- DuplicateComponentException - if a ContentComponent with the given name exists in this ContentComponentContainer
- IllegalDocumentTypeException - if the specified component type is not a valid content component type
- DocumentCreationException - if the specified component type could not be created
removeComponent
void removeComponent(java.lang.String name) throws ComponentNotFoundException
- Removes the ContentComponent with the name specified by the argument in this ContentComponentContainer.
Note: The name of ContentComponent passed in as an argument to this method must exactly match the name of an existing ContentComponent in this ContentComponentContainer.
Note: This method is case sensitive.
- Parameters:
- name - name of component to be updated
- Throws:
- ComponentNotFoundException - if no ContentComponent with the given name exists in this ContentComponentContainer
getComponentNames
java.lang.String[] getComponentNames()
- Return a list of component names for all ContentComponents in this ContentComponentContainer.
Note: The component name list will also include the names of unsupported content components
- Returns:
- a String array of all component names
getCategoryIds
DocumentId<? extends Category>[] getCategoryIds()
- Return array of IDs for the categories associated with this content. Only the categories that can be seen by this user will be returned. Return an empty array if categories have not been set.
- Returns:
- array of category Ids
getCombinedCategoryIds
DocumentId<? extends Category>[] getCombinedCategoryIds()
- Return array of IDs for the all categories associated with this content. This method would return a combined set of all the categories set in the profile section and the categories set in option selection elements. Only the categories that can be seen by this user will be returned. Return an empty array if categories have not been set.
- Returns:
- array of category Ids
addCategoryIds
void addCategoryIds(DocumentId<? extends Category>[] categoryIds)
- Add categories to this content. N.B If this Content is not configured to be profiled, then no categories are added.
- Parameters:
- categoryIds - the array of category IDs to add
removeCategoryIds
void removeCategoryIds(DocumentId<? extends Category>[] categoryIds)
- Remove categories from this content. No categories are removed if this content does not have a profile.
- Parameters:
- categoryIds - the array of category IDs to remove
getKeywords
java.lang.String[] getKeywords()
- Return an array of keywords associated with this content. Return an empty array if no keywords have been set.
- Returns:
- the keywords for this content
setKeywords
void setKeywords(java.lang.String[] keywords)
- Sets the keywords for this Content document. Duplicate keywords will be removed. Keywords will not be added if this content does not have a profile.
- Parameters:
- keywords - the array of keywords
Tree PREV CLASS NEXT CLASS FRAMES NO FRAMES SUMMARY: NESTED | FIELD | CONSTR | METHOD DETAIL: FIELD | CONSTR | METHOD