org.eclipse.higgins.idas
Interface IRelationship<T>

Package class diagram package IRelationship
Type Parameters:
T - The type of object used to indicate the related object.

This may be the related-to object itself, or an identifier representing it.

All Superinterfaces:
IHasMetadata

public interface IRelationship<T>
extends IHasMetadata

Represents a relationship to another object.

TODO: add javadoc to methods.


Method Summary
 void addRelatedObject(T object)
           
 Iterable<T> getRelatedObjects()
           
 URI getType()
          Returns this relationship's type.
 void removeRelatedObject(T object)
           
 
Methods inherited from interface org.eclipse.higgins.idas.IHasMetadata
addMetadata, createMetadata, getMetadataSet, removeMetadata
 

Method Detail

getType

URI getType()
            throws IdASException
Returns this relationship's type. Note that this is not the same as the type of T.

TODO: Add (or point at) doc which explains relationship types. TODO: Add example types. Possibly some that denote hierarchy (parent, child, sibling).

Returns:
A URI representing this relationship's type.
Throws:
IdASException

getRelatedObjects

Iterable<T> getRelatedObjects()
                              throws IdASException
Throws:
IdASException

addRelatedObject

void addRelatedObject(T object)
                      throws IdASException
Throws:
IdASException

removeRelatedObject

void removeRelatedObject(T object)
                         throws IdASException
Throws:
IdASException


Copyright © 2006 Novell Inc. All Rights Reserved.
This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html

Contributors:
  Jim Sermersheim (Novell, Inc.) - initial API and implementation