org.caleigo.core
Class ProxyQualifier

java.lang.Object
  extended byorg.caleigo.core.Qualifier
      extended byorg.caleigo.core.ProxyQualifier
All Implemented Interfaces:
java.io.Serializable

public class ProxyQualifier
extends Qualifier

A ProxyQualifier acts as a proxy to another Qualifier object that may set by simple access a methods. All events are forwarded transparently. If a ProxyQualifier does not have a source object it does not qualify any entities of any type, making them effectivelly useless. In other words it allways returns false on calls to doesSelect, canSelect and canUniquelySelect.

Version:
1.00
Author:
Dennis Zikovic
See Also:
Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.caleigo.core.Qualifier
Qualifier.RelayListener
 
Constructor Summary
ProxyQualifier()
          Creates new ProxyQualifier
ProxyQualifier(Qualifier qualifier)
          Creates new ProxyQualifier
 
Method Summary
 void addProxyListener(IProxyListener listener)
          Adds IProxyListener to receive notifications of performed data operations on the Qualifier object.
 boolean canDirectlyQualify(IEntityDescriptor entityDescriptor)
          This abstract method must return true if the qualifier can select entities of the type defined by the provided entity descriptor without the nead of any complementary data.
 boolean canQualify(IEntityDescriptor entityDescriptor)
          This abstract method must return true if the qualifier can select entities of the type defined by the provided entity descriptor.
 boolean canUniquelyQualify(IEntityDescriptor entityDescriptor)
          This abstract method must return true if the qualifier can uniquely select entities of the type defined by the provided entity descriptor.
 boolean doesQualify(IEntity entity)
          This abstract method must return true if the qualifier does select the provided entity object.
protected  void fireProxyEvent(int eventType)
          Fires a ProxyEvent with the provided operation type to all registered IProxyListener objects.
 Qualifier getRemoteQualifier()
          Access method that returns the remote Qualifier of the proxy.
 Qualifier getSourceQualifier()
          Access method that returns the source Qualifier of the proxy.
 boolean hasRemoteQualifier()
          Boolean access method that returns true if the proxy has a remote Qualifier if false then getRemoteQualifier() will return null.
 boolean hasSourceQualifier()
          Boolean access method that returns true if the proxy has a source Qualifier if false then getSourceQualifier() will return null.
 void removeProxyListener(IProxyListener listener)
          Removes the specified IProxyListener from the Qualifier object.
 void setRemoteQualifier(Qualifier qualifier)
          Optional mutation method that throws an UnsupportedOperationException if the implementing class does not support the method.
 java.lang.String toString()
          The toString method returns an "abstract" expression of what the qualifier selects.
 
Methods inherited from class org.caleigo.core.Qualifier
addQualifierListener, and, and, and, combine, create, create, fireContentChangedEvent, fireQualifierEvent, fireStructureChangedEvent, negate, or, or, or, removeQualifierListener
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ProxyQualifier

public ProxyQualifier()
Creates new ProxyQualifier


ProxyQualifier

public ProxyQualifier(Qualifier qualifier)
Creates new ProxyQualifier

Method Detail

doesQualify

public boolean doesQualify(IEntity entity)
This abstract method must return true if the qualifier does select the provided entity object.

Specified by:
doesQualify in class Qualifier

canQualify

public boolean canQualify(IEntityDescriptor entityDescriptor)
This abstract method must return true if the qualifier can select entities of the type defined by the provided entity descriptor.

Specified by:
canQualify in class Qualifier

canDirectlyQualify

public boolean canDirectlyQualify(IEntityDescriptor entityDescriptor)
This abstract method must return true if the qualifier can select entities of the type defined by the provided entity descriptor without the nead of any complementary data. No other information than can be accessed through the provided entity descriptor should be neaded if this method returns true. This validates that the doesQualify method can be called for the called qualifier.

Specified by:
canDirectlyQualify in class Qualifier

canUniquelyQualify

public boolean canUniquelyQualify(IEntityDescriptor entityDescriptor)
This abstract method must return true if the qualifier can uniquely select entities of the type defined by the provided entity descriptor. If that is the case then the qualifier is an identity qualifier and can never qualify more then a single entity instance of the specified type.

Specified by:
canUniquelyQualify in class Qualifier

toString

public java.lang.String toString()
The toString method returns an "abstract" expression of what the qualifier selects. Note that this expresion is only intended for visual aid and is not a valid SQL expresion.


hasRemoteQualifier

public boolean hasRemoteQualifier()
Boolean access method that returns true if the proxy has a remote Qualifier if false then getRemoteQualifier() will return null.


getRemoteQualifier

public Qualifier getRemoteQualifier()
Access method that returns the remote Qualifier of the proxy. May return null if the proxy does not currently have a remote.


hasSourceQualifier

public boolean hasSourceQualifier()
Boolean access method that returns true if the proxy has a source Qualifier if false then getSourceQualifier() will return null.


getSourceQualifier

public Qualifier getSourceQualifier()
Access method that returns the source Qualifier of the proxy. May return null if the proxy does not currently have a source Qualifier.


setRemoteQualifier

public void setRemoteQualifier(Qualifier qualifier)
Optional mutation method that throws an UnsupportedOperationException if the implementing class does not support the method. Note that setting a new remote qualifier is and should be considered as a structural change in the Qualifier causing a QualifierEvent to be fired.


addProxyListener

public void addProxyListener(IProxyListener listener)
Adds IProxyListener to receive notifications of performed data operations on the Qualifier object.


removeProxyListener

public void removeProxyListener(IProxyListener listener)
Removes the specified IProxyListener from the Qualifier object.


fireProxyEvent

protected void fireProxyEvent(int eventType)
Fires a ProxyEvent with the provided operation type to all registered IProxyListener objects.



Copyright © 2005 Caleigo. All Rights Reserved.