© 2005 BEA Systems, Inc.

com.bea.p13n.advisor
Interface Advice


public interface Advice

This interface is used to return advice from the Advisor. Advice can consist of a number of namespaces (one for each Advislet) each of which can contain a list of key-value pairs, that contain sub-results for the Advice.

Advice is considered complete if isComplete returns true and there are no ProcessingErrors associated with the Advice.


Method Summary
 void addProcessingError(ProcessingError error)
          Adds an error that ocurred while processing an AdviceRequest
 Object getEntry(Advislet advislet, Object key)
          Retrieves an entry from an Advislet's namespace.
 String getIdentifier()
          Get the identifier for the Advice.
 ProcessingError[] getProcessingErrors()
          Get the ProcessingErrors which occured while creating the Advice.
 Object getResult()
          Returns the last RESULT key written to the Advice.
 Object getResult(Advislet advislet)
          Get the object with the RESULT key for an Advislet.
 boolean isComplete()
          Returns the completion status for the Advice.
 void setEntry(Advislet advislet, Object key, Object value)
          Sets an entry within an Advislet's namespace.
 void setIncomplete()
          Marks this Advice object as incomplete.
 void setResult(Advislet advislet, Object value)
          Sets the result within an Advislet's namespace.
 

Method Detail

addProcessingError

public void addProcessingError(ProcessingError error)
Adds an error that ocurred while processing an AdviceRequest

Parameters:
error - the ProcessingError to be added.

getEntry

public Object getEntry(Advislet advislet,
                       Object key)
Retrieves an entry from an Advislet's namespace.

Parameters:
advislet - the Advislet namespace to be queried
key - the key for the value within the namespace
Returns:
an Advice sub-result

getIdentifier

public String getIdentifier()
Get the identifier for the Advice.

Returns:
the unique identifier for the advice result

getProcessingErrors

public ProcessingError[] getProcessingErrors()
Get the ProcessingErrors which occured while creating the Advice.

Returns:
the errors that ocurred while processing an AdviceRequest

getResult

public Object getResult()
                 throws IllegalStateException
Returns the last RESULT key written to the Advice.

Returns:
the Object with the RESULT key for the final Advislet The last object that was saved with RESULT key is returned
Throws:
IllegalStateException - if isComplete returns false

getResult

public Object getResult(Advislet advislet)
Get the object with the RESULT key for an Advislet.

Parameters:
advislet - The target Advislet
Returns:
the Object with the RESULT key for the Advislet

isComplete

public boolean isComplete()
Returns the completion status for the Advice.

Returns:
true if the AdviceRequest was fully completed without errors. If this method returns false the caller should examine the ProcessingErrors before using any sub-result entries and should not call getResult().

setEntry

public void setEntry(Advislet advislet,
                     Object key,
                     Object value)
Sets an entry within an Advislet's namespace.

Parameters:
advislet - the Advislet namespace to be modifed
key - the key for the Advice sub-result being added.
value - the value to be associated with the key

setIncomplete

public void setIncomplete()
Marks this Advice object as incomplete. Once an Advice object is marked as incomplete it cannot be subsequently marked as complete.


setResult

public void setResult(Advislet advislet,
                      Object value)
Sets the result within an Advislet's namespace.

Parameters:
advislet - the Advislet namespace to be modifed
value - the result value

© 2005 BEA Systems, Inc.

Copyright © 2005 BEA Systems, Inc. All Rights Reserved