com.bea.wli.management.runtime
Class ProcessInstanceQuery

java.lang.Object
  extended by com.bea.wli.management.runtime.ProcessInstanceQuery
All Implemented Interfaces:
Serializable

public class ProcessInstanceQuery
extends Object
implements Serializable

Represents a query to obtain information about process instances.

See Also:
ProcessRuntimeMBean, Serialized Form

Constructor Summary
ProcessInstanceQuery()
          Constructor for creating an empty query.
ProcessInstanceQuery(String instanceId)
          Constructor for querying a single process instance
ProcessInstanceQuery(String serviceURI, ProcessStatus status)
          Convenience constructor for querying instances of the given service that are in the given state.
ProcessInstanceQuery(String serviceURI, ProcessStatus[] status, long startTimeMin, long startTimeMax, long statusChangeTimeMin, long statusChangeTimeMax, long elapsedMin, long elapsedMax, String label, boolean aboveSLA, boolean aboveSLAWarning, int count)
           
 
Method Summary
 boolean equals(Object o)
           
 int getCount()
           
 long getElapsedMax()
           
 long getElapsedMin()
           
 String getInstanceId()
          Returns the instance (conversation) id component of the query.
 String getLabel()
           
 String getServiceURI()
          Returns the serviceURI to filter on.
 long getStartTimeMax()
           
 long getStartTimeMin()
           
 ProcessStatus[] getStatus()
          Returns the array ProcessStatus object to filter on.
 long getStatusChangeTimeMax()
           
 long getStatusChangeTimeMin()
           
 int hashCode()
           
 boolean isAboveSLA()
           
 boolean isAboveSLAWarning()
           
 boolean isSingleInstanceQuery()
          Returns true if the query filters only on the instance (coversation) id.
 void setAboveSLA(boolean aboveSLA)
          Allows filtering instances based on their SLA status.
 void setAboveSLAWarning(boolean aboveSLAWarning)
          Allows filtering instances based on their SLA Warning Threshold status.
 void setCount(int count)
          Sets the maximum number of results to return.
 void setElapsedMax(long elapsedMax)
          Sets the maximum elapsed time for the instances that are returned.
 void setElapsedMin(long elapsedMin)
          Sets the minimum elapsed time for the instances that are returned.
 void setInstanceId(String instanceId)
          Sets the instance (conversation) id component of the query.
 void setLabel(String label)
          Adds a predicate to the query so that only instances whose process label containing this value are returned.
 void setServiceURI(String serviceURI)
          Sets the serviceURI predicate so that only instances of a particular process are returned.
 void setStartTimeMax(long startTimeMax)
          Adds a predicate to the query so that only instances that started before the given time are returned.
 void setStartTimeMin(long startTimeMin)
          Adds a predicate to the query so that only instances that started after the given time are returned.
 void setStatus(ProcessStatus status)
          Convenience method for query instances that are in the given state.
 void setStatus(ProcessStatus[] status)
          Sets the process status predicate so that only instances that are in one of the states are returned.
 void setStatusChangeTimeMax(long statusChangeTimeMax)
          Adds a predicate to the query so that only instances that has aborted, completed, or terminated before the given time are returned.
 void setStatusChangeTimeMin(long statusChangeTimeMin)
          Adds a predicate to the query so that only instances that has aborted, completed, or terminated after the given time are returned.
 String toString()
           
 
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ProcessInstanceQuery

public ProcessInstanceQuery()
Constructor for creating an empty query. An empty query returns all the instances


ProcessInstanceQuery

public ProcessInstanceQuery(String instanceId)
Constructor for querying a single process instance

Parameters:
instanceId - the id of the process instance to be queried

ProcessInstanceQuery

public ProcessInstanceQuery(String serviceURI,
                            ProcessStatus[] status,
                            long startTimeMin,
                            long startTimeMax,
                            long statusChangeTimeMin,
                            long statusChangeTimeMax,
                            long elapsedMin,
                            long elapsedMax,
                            String label,
                            boolean aboveSLA,
                            boolean aboveSLAWarning,
                            int count)
Parameters:
serviceURI - service URI of the process type. A null value indicates all process types be considered.
status - return instances that are in one of the given states. A null value or an array of length 0 indicates all states.
startTimeMin - return only instances that have started after this time. Use 0 if this is not applicable
startTimeMax - return only instances that have started before this time. Use Long.MAX_VALUE if this is not applicable
statusChangeTimeMin - return only instances whose status has changed after this time. Use 0 if this is not applicable. This parameter can be used in conjunction with the status parameter, to obtain instances that have been completed, aborted, terminated, or frozen after a particular time.
statusChangeTimeMax - return only instances whose status has changed before this time. Use Long.MAX_VALUE if this is not applicable. This parameter can be used in conjunction with the status parameter, to obtain instances that have been completed, aborted, terminated or frozen before a particular time.
elapsedMin - return only instances that have executed for more than this amount. Use 0 if this is not applicable. The elapsed time also includes the time an instance spent waiting for a message, or while being blocked.
elapsedMax - return only instances that have executed for less than this amount. Use Long.MAX_VALUE if this is not applicable
aboveSLA - a true value indicates that only instances that have exceeded their SLAs should be included in the result. A true value will cause to exclude all instances of process types that do not have a SLA value defined.
aboveSLAWarning - a true value indicates that instances that have exceeded their SLA Warning thresholds. This parameter can be used in conjunction with exceedSLA parameter to obtain instances that exceeded their SLAs, instances that exceeded either their SLAs or SLA Warning thresholds, or instances that exceeded their SLAWarning level but not their SLA.
label - return only instances whose process label includes the this string. Use null value if this is not applicable
count - the maximum result cardinality

ProcessInstanceQuery

public ProcessInstanceQuery(String serviceURI,
                            ProcessStatus status)
Convenience constructor for querying instances of the given service that are in the given state.

Parameters:
serviceURI - service URI of the process type. A null value indicates all process types be considered.
status - return instances that are in one of the given states. A null value or an array of length 0 indicates all states.
Method Detail

isSingleInstanceQuery

public boolean isSingleInstanceQuery()
Returns true if the query filters only on the instance (coversation) id.


getInstanceId

public String getInstanceId()
Returns the instance (conversation) id component of the query. If instance id is set all other predicates are ignored.


setInstanceId

public void setInstanceId(String instanceId)
Sets the instance (conversation) id component of the query. This resets all other predicates that may have been set previously.


getServiceURI

public String getServiceURI()
Returns the serviceURI to filter on. Returns null if the query does not filter based on service URI.


setServiceURI

public void setServiceURI(String serviceURI)
Sets the serviceURI predicate so that only instances of a particular process are returned. A null value is allowed and indicates all processes, effectively disabling the filtering on serviceURI.


getStatus

public ProcessStatus[] getStatus()
Returns the array ProcessStatus object to filter on. Returns null if the query does not filter based on the process status.


setStatus

public void setStatus(ProcessStatus[] status)
Sets the process status predicate so that only instances that are in one of the states are returned. A null value or an empty array indicates that process status is not considered when querying instances.


setStatus

public void setStatus(ProcessStatus status)
Convenience method for query instances that are in the given state.

Parameters:
status -

getStartTimeMin

public long getStartTimeMin()

setStartTimeMin

public void setStartTimeMin(long startTimeMin)
Adds a predicate to the query so that only instances that started after the given time are returned. A value of 0 effectively disables this predicate. The default value for this component is 0

Parameters:
startTimeMin - time in milliseconds

getStartTimeMax

public long getStartTimeMax()

setStartTimeMax

public void setStartTimeMax(long startTimeMax)
Adds a predicate to the query so that only instances that started before the given time are returned. A value of Long.MAX_VALUE effectively disabled this predicate. The default value for this component is Long.MAX_VALUE

Parameters:
startTimeMax - time in milliseconds

getStatusChangeTimeMin

public long getStatusChangeTimeMin()

setStatusChangeTimeMin

public void setStatusChangeTimeMin(long statusChangeTimeMin)
Adds a predicate to the query so that only instances that has aborted, completed, or terminated after the given time are returned. A value of 0 effectively disables this predicate. The default value for this component is 0

Parameters:
statusChangeTimeMin - time in milliseconds

getStatusChangeTimeMax

public long getStatusChangeTimeMax()

setStatusChangeTimeMax

public void setStatusChangeTimeMax(long statusChangeTimeMax)
Adds a predicate to the query so that only instances that has aborted, completed, or terminated before the given time are returned. A value of Long.MAX_VALUE effectively disables this predicate. The default value for this component is Long.MAX_VALUE

Parameters:
statusChangeTimeMax -

getElapsedMin

public long getElapsedMin()

setElapsedMin

public void setElapsedMin(long elapsedMin)
Sets the minimum elapsed time for the instances that are returned. The default value for this component is 0

Parameters:
elapsedMin - minimum elapsed time in milliseconds

getElapsedMax

public long getElapsedMax()

setElapsedMax

public void setElapsedMax(long elapsedMax)
Sets the maximum elapsed time for the instances that are returned. The default value for this component is Long.MAX_VALUE

Parameters:
elapsedMax - maximum elapsed time in milliseconds

getLabel

public String getLabel()

setLabel

public void setLabel(String label)
Adds a predicate to the query so that only instances whose process label containing this value are returned.

Parameters:
label -

isAboveSLA

public boolean isAboveSLA()

setAboveSLA

public void setAboveSLA(boolean aboveSLA)
Allows filtering instances based on their SLA status. A true value causes instances that exceeded their SLAs to be returned. default value for this component is false. This method can be used in conjunction with the setAboveSLAWarning(boolean) to return:

  • all instances that exceeded their SLAs but not SLA Warning Thresholds.
  • all instances that exceeded their SLAs or SLA Warning Thresholds.
  • all instances that exceeded their SLA Warning Threshold but not SLA

    Parameters:
    aboveSLA -

  • isAboveSLAWarning

    public boolean isAboveSLAWarning()

    setAboveSLAWarning

    public void setAboveSLAWarning(boolean aboveSLAWarning)
    Allows filtering instances based on their SLA Warning Threshold status. A true value causes instances that exceeded their SLA Warning Thresholds to be returned. default value for this component is false. This method can be used in conjunction with the setAboveSLA(boolean) to return:

  • all instances that exceeded their SLAs but not SLA Warning Thresholds.
  • all instances that exceeded their SLAs or SLA Warning Thresholds.
  • all instances that exceeded their SLA Warning Threshold but not SLA


  • getCount

    public int getCount()

    setCount

    public void setCount(int count)
    Sets the maximum number of results to return.

    Parameters:
    count -

    equals

    public boolean equals(Object o)
    Overrides:
    equals in class Object

    hashCode

    public int hashCode()
    Overrides:
    hashCode in class Object

    toString

    public String toString()
    Overrides:
    toString in class Object