com.hp.hpl.jena.enhanced
Class Polymorphic

java.lang.Object
  extended bycom.hp.hpl.jena.enhanced.Polymorphic
Direct Known Subclasses:
EnhGraph, EnhNode

public abstract class Polymorphic
extends java.lang.Object

Abstract base class for all polymorphic RDF objects, especially enhanced node and enhanced graph.

Author:
Jeremy Carroll (original code)
Chris Dollin (original code)
Ian Dickinson (tidying up and comments)

Method Summary
 void addView(Polymorphic other)
          add another view for this object.
abstract  boolean equals(java.lang.Object o)
          subclasses must override equals.
abstract  boolean isValid()
          answer true iff this enhanced node is still underpinned in the graph by triples appropriate to its type.
 boolean supports(java.lang.Class t)
          return _true_ iff this polymorphic object supports the specified interface.
 
Methods inherited from class java.lang.Object
getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

supports

public boolean supports(java.lang.Class t)
return _true_ iff this polymorphic object supports the specified interface. Synonymous with "does the argument class have this as an instance". Actually it shouldn't be. Review.


isValid

public abstract boolean isValid()
answer true iff this enhanced node is still underpinned in the graph by triples appropriate to its type.


equals

public abstract boolean equals(java.lang.Object o)
subclasses must override equals. Actually they may not have to nowadays ... I have expunged the clever facet-identity test (and indeed facets).


addView

public void addView(Polymorphic other)
add another view for this object. other must be freshly constructed. To be called by subclasses when they have constructed a new view for this object. This method is public ONLY so that it can be tested. TODO find a better way to make it testable.



Copyright © 2001-2003 Hewlett-Packard. All Rights Reserved.