org.specrunner.result.core
Class ResultSetImpl

java.lang.Object
  extended by java.util.AbstractCollection<E>
      extended by java.util.AbstractList<E>
          extended by java.util.AbstractSequentialList<E>
              extended by java.util.LinkedList<IResult>
                  extended by org.specrunner.result.core.ResultSetImpl
All Implemented Interfaces:
Serializable, Cloneable, Iterable<IResult>, Collection<IResult>, Deque<IResult>, List<IResult>, Queue<IResult>, IResultSet, IStatus, IPresentation

public class ResultSetImpl
extends LinkedList<IResult>
implements IResultSet

Default result set implementation.

Author:
Thiago Santos
See Also:
Serialized Form

Field Summary
 
Fields inherited from class java.util.AbstractList
modCount
 
Fields inherited from interface org.specrunner.result.IResultSet
FEATURE_EXPECTED_MESSAGES, FEATURE_EXPECTED_SORTED, FEATURE_RECORD_SUCCESS, FEATURE_RESULT_FILTER
 
Constructor Summary
ResultSetImpl()
           
 
Method Summary
 List<ActionType> actionTypes()
          List action types available for all results.
 List<ActionType> actionTypes(List<IResult> subset)
          List action types available for the result subset.
 IResult addResult(Status status, IBlock source)
          Add a result.
 IResult addResult(Status status, IBlock source, IWritable writable)
          Adds a result.
 IResult addResult(Status status, IBlock source, String message)
          Adds a result with a message.
 IResult addResult(Status status, IBlock source, String message, IWritable writable)
          Adds a result with a message and a writable information.
protected  IResult addResult(Status status, IBlock source, String message, Throwable failure, IWritable writable)
          Add a result.
 IResult addResult(Status status, IBlock source, Throwable failure)
          Adds a result with failure information.
 IResult addResult(Status status, IBlock source, Throwable failure, IWritable writable)
          Adds a result with failure and a writable information.
protected  Status analyzeStatus(Status status, String message, Throwable failure)
          Perform status analysis based on expected message.
protected  void append(StringBuilder errors, List<String> list)
          Append messages to error list.
 nu.xom.Node asNode()
          The object representation as node.
 String asString()
          The object representation as string.
<T extends Status>
List<T>
availableStatus()
          Lists status in result.
 void consolidate(IContext context)
          Consolidate expectations and received errors.
<T extends Status>
int
countStatus(int start, int end, T... status)
          Counts the status of a given type.
<T extends Status>
int
countStatus(List<IResult> subset, T... status)
          Counts the status of a given type.
<T extends Status>
int
countStatus(T... status)
          Counts the status of a given type.
 int countType(ActionType... status)
          Count results of a given set of action types.
 int countType(List<IResult> result, ActionType... status)
          Count results of a given type in a list.
protected  StringBuilder details(List<IResult> list)
          Generate report by type.
<T extends Status>
List<T>
errorStatus()
          Lists error status in result.
<T extends Status>
List<IResult>
filterByStatus(int start, int end, T... status)
          Filters result by status type.
<T extends Status>
List<IResult>
filterByStatus(List<IResult> subset, T... status)
          Filters result by status type.
<T extends Status>
List<IResult>
filterByStatus(T... status)
          Filters result by status type.
 List<IResult> filterByType(ActionType... actionType)
          Filter the result itself by ActionType.
 List<IResult> filterByType(List<IResult> subset, ActionType... actionType)
          Filter the subset by ActionType.
protected  String getMessage(String message, Throwable failure)
          Obtain message from error notification.
 String[] getMessages()
          Get the expected messages.
protected  String getName(Class<IActionType> t)
          The name for a given interface.
protected  String getName(Status s)
          Returns the name of a given status.
 Boolean getRecordSuccess()
          Flag to record status which isError returns true.
 IResultFilter getResultFilter()
          Return the filter.
 Boolean getSorted()
          Get the sort flag.
 Status getStatus()
          The object status.
 void setMessages(String[] messages)
          Set expected messages.
 void setRecordSuccess(Boolean recordSuccess)
          Setting to record success action in result set.
 void setResultFilter(IResultFilter resultFilter)
          Set result filter.
 void setSorted(Boolean sorted)
          Set expected order of messages.
 IResultSet subSet(int start, int end)
          Get a subset of result as a result set itself.
 String toString()
           
 
Methods inherited from class java.util.LinkedList
add, add, addAll, addAll, addFirst, addLast, clear, clone, contains, descendingIterator, element, get, getFirst, getLast, indexOf, lastIndexOf, listIterator, offer, offerFirst, offerLast, peek, peekFirst, peekLast, poll, pollFirst, pollLast, pop, push, remove, remove, remove, removeFirst, removeFirstOccurrence, removeLast, removeLastOccurrence, set, size, toArray, toArray
 
Methods inherited from class java.util.AbstractSequentialList
iterator
 
Methods inherited from class java.util.AbstractList
equals, hashCode, listIterator, removeRange, subList
 
Methods inherited from class java.util.AbstractCollection
containsAll, isEmpty, removeAll, retainAll
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface java.util.List
add, add, addAll, addAll, clear, contains, containsAll, equals, get, hashCode, indexOf, isEmpty, iterator, lastIndexOf, listIterator, listIterator, remove, remove, removeAll, retainAll, set, size, subList, toArray, toArray
 
Methods inherited from interface java.util.Deque
iterator
 

Constructor Detail

ResultSetImpl

public ResultSetImpl()
Method Detail

getResultFilter

public IResultFilter getResultFilter()
Description copied from interface: IResultSet
Return the filter.

Specified by:
getResultFilter in interface IResultSet
Returns:
The result filter.

setResultFilter

public void setResultFilter(IResultFilter resultFilter)
Description copied from interface: IResultSet
Set result filter.

Specified by:
setResultFilter in interface IResultSet
Parameters:
resultFilter - A filter.

getRecordSuccess

public Boolean getRecordSuccess()
Description copied from interface: IResultSet
Flag to record status which isError returns true. Default is true.

Specified by:
getRecordSuccess in interface IResultSet
Returns:
true, if record success flag is enabled, false, to record only error status.

setRecordSuccess

public void setRecordSuccess(Boolean recordSuccess)
Description copied from interface: IResultSet
Setting to record success action in result set.

Specified by:
setRecordSuccess in interface IResultSet
Parameters:
recordSuccess - The record success.

setMessages

public void setMessages(String[] messages)
Description copied from interface: IResultSet
Set expected messages.

Specified by:
setMessages in interface IResultSet
Parameters:
messages - Expected messages.

getMessages

public String[] getMessages()
Description copied from interface: IResultSet
Get the expected messages.

Specified by:
getMessages in interface IResultSet
Returns:
The messages.

setSorted

public void setSorted(Boolean sorted)
Description copied from interface: IResultSet
Set expected order of messages.

Specified by:
setSorted in interface IResultSet
Parameters:
sorted - true, if expected messages must obey the specification order, false, otherwise. Default might be false.

getSorted

public Boolean getSorted()
Description copied from interface: IResultSet
Get the sort flag.

Specified by:
getSorted in interface IResultSet
Returns:
true, of order required, false, otherwise.

consolidate

public void consolidate(IContext context)
Description copied from interface: IResultSet
Consolidate expectations and received errors.

Specified by:
consolidate in interface IResultSet
Parameters:
context - The context.

append

protected void append(StringBuilder errors,
                      List<String> list)
Append messages to error list.

Parameters:
errors - A error string.
list - A error list.

getMessage

protected String getMessage(String message,
                            Throwable failure)
Obtain message from error notification.

Parameters:
message - The message.
failure - The failure.
Returns:
The message.

getStatus

public Status getStatus()
Description copied from interface: IStatus
The object status.

Specified by:
getStatus in interface IStatus
Returns:
The status.

availableStatus

public <T extends Status> List<T> availableStatus()
Description copied from interface: IResultSet
Lists status in result.

Specified by:
availableStatus in interface IResultSet
Type Parameters:
T - A subclass of Status.
Returns:
An iterator of status.

errorStatus

public <T extends Status> List<T> errorStatus()
Description copied from interface: IResultSet
Lists error status in result.

Specified by:
errorStatus in interface IResultSet
Type Parameters:
T - A subclass of Status.
Returns:
An iterator of status of type error in result.

filterByStatus

public <T extends Status> List<IResult> filterByStatus(T... status)
Description copied from interface: IResultSet
Filters result by status type.

Specified by:
filterByStatus in interface IResultSet
Type Parameters:
T - A subclass of Status.
Parameters:
status - The filters.
Returns:
The subset of status.

filterByStatus

public <T extends Status> List<IResult> filterByStatus(int start,
                                                       int end,
                                                       T... status)
Description copied from interface: IResultSet
Filters result by status type.

Specified by:
filterByStatus in interface IResultSet
Type Parameters:
T - A subtype of Status.
Parameters:
start - Range start.
end - Range end.
status - The filters.
Returns:
The subset of status.

filterByStatus

public <T extends Status> List<IResult> filterByStatus(List<IResult> subset,
                                                       T... status)
Description copied from interface: IResultSet
Filters result by status type.

Specified by:
filterByStatus in interface IResultSet
Type Parameters:
T - A subtype of Status.
Parameters:
subset - Subset list.
status - The filters.
Returns:
The subset of status.

countStatus

public <T extends Status> int countStatus(T... status)
Description copied from interface: IResultSet
Counts the status of a given type.

Specified by:
countStatus in interface IResultSet
Type Parameters:
T - A subtype of Status.
Parameters:
status - The filters.
Returns:
The number of result.

countStatus

public <T extends Status> int countStatus(int start,
                                          int end,
                                          T... status)
Description copied from interface: IResultSet
Counts the status of a given type.

Specified by:
countStatus in interface IResultSet
Type Parameters:
T - A status class.
Parameters:
start - Range start.
end - Range end.
status - The filters.
Returns:
The number of result.

countStatus

public <T extends Status> int countStatus(List<IResult> subset,
                                          T... status)
Description copied from interface: IResultSet
Counts the status of a given type.

Specified by:
countStatus in interface IResultSet
Type Parameters:
T - A status class.
Parameters:
subset - A subset list.
status - The filters.
Returns:
The number of result.

actionTypes

public List<ActionType> actionTypes()
Description copied from interface: IResultSet
List action types available for all results.

Specified by:
actionTypes in interface IResultSet
Returns:
The list of types.

actionTypes

public List<ActionType> actionTypes(List<IResult> subset)
Description copied from interface: IResultSet
List action types available for the result subset.

Specified by:
actionTypes in interface IResultSet
Parameters:
subset - Subset to be analyzed.
Returns:
The list of types.

filterByType

public List<IResult> filterByType(ActionType... actionType)
Description copied from interface: IResultSet
Filter the result itself by ActionType.

Specified by:
filterByType in interface IResultSet
Parameters:
actionType - The action types.
Returns:
The filtered subset.

filterByType

public List<IResult> filterByType(List<IResult> subset,
                                  ActionType... actionType)
Description copied from interface: IResultSet
Filter the subset by ActionType.

Specified by:
filterByType in interface IResultSet
Parameters:
subset - The subset to be filtered.
actionType - The action types.
Returns:
The filtered subset.

countType

public int countType(ActionType... status)
Description copied from interface: IResultSet
Count results of a given set of action types.

Specified by:
countType in interface IResultSet
Parameters:
status - The action types.
Returns:
The size of the filtered set.

countType

public int countType(List<IResult> result,
                     ActionType... status)
Description copied from interface: IResultSet
Count results of a given type in a list.

Specified by:
countType in interface IResultSet
Parameters:
result - A subset of results.
status - The action types.
Returns:
The size of the filtered set.

addResult

public IResult addResult(Status status,
                         IBlock source)
Description copied from interface: IResultSet
Add a result.

Specified by:
addResult in interface IResultSet
Parameters:
status - The status.
source - The source block.
Returns:
The result.

addResult

public IResult addResult(Status status,
                         IBlock source,
                         IWritable writable)
Description copied from interface: IResultSet
Adds a result.

Specified by:
addResult in interface IResultSet
Parameters:
status - The status.
source - The source block.
writable - A writable information.
Returns:
The result.

addResult

public IResult addResult(Status status,
                         IBlock source,
                         String message)
Description copied from interface: IResultSet
Adds a result with a message.

Specified by:
addResult in interface IResultSet
Parameters:
status - The status.
source - The source block.
message - The message.
Returns:
The result.

addResult

public IResult addResult(Status status,
                         IBlock source,
                         String message,
                         IWritable writable)
Description copied from interface: IResultSet
Adds a result with a message and a writable information.

Specified by:
addResult in interface IResultSet
Parameters:
status - The status.
source - The source block.
message - The message.
writable - The extra information.
Returns:
The result.

addResult

public IResult addResult(Status status,
                         IBlock source,
                         Throwable failure)
Description copied from interface: IResultSet
Adds a result with failure information.

Specified by:
addResult in interface IResultSet
Parameters:
status - The status.
source - The source block.
failure - The failure.
Returns:
The result.

addResult

public IResult addResult(Status status,
                         IBlock source,
                         Throwable failure,
                         IWritable writable)
Description copied from interface: IResultSet
Adds a result with failure and a writable information.

Specified by:
addResult in interface IResultSet
Parameters:
status - The status.
source - The source block.
failure - The failure.
writable - The extra information.
Returns:
The result.

addResult

protected IResult addResult(Status status,
                            IBlock source,
                            String message,
                            Throwable failure,
                            IWritable writable)
Add a result.

Parameters:
status - The status.
source - The source.
message - The message.
failure - The failure.
writable - The writable resources.
Returns:
The result new created.

analyzeStatus

protected Status analyzeStatus(Status status,
                               String message,
                               Throwable failure)
Perform status analysis based on expected message.

Parameters:
status - The status.
message - The message.
failure - The failure.
Returns:
The adjusted status.

subSet

public IResultSet subSet(int start,
                         int end)
Description copied from interface: IResultSet
Get a subset of result as a result set itself.

Specified by:
subSet in interface IResultSet
Parameters:
start - The start index.
end - The end index.
Returns:
The corresponding subset.

toString

public String toString()
Overrides:
toString in class AbstractCollection<IResult>

getName

protected String getName(Status s)
Returns the name of a given status.

Parameters:
s - The status.
Returns:
The formated name.

details

protected StringBuilder details(List<IResult> list)
Generate report by type.

Parameters:
list - The result list to be analyzed.
Returns:
The short string form.

getName

protected String getName(Class<IActionType> t)
The name for a given interface.

Parameters:
t - The interface type.
Returns:
The string version.

asString

public String asString()
Description copied from interface: IPresentation
The object representation as string.

Specified by:
asString in interface IPresentation
Returns:
String representation.

asNode

public nu.xom.Node asNode()
Description copied from interface: IPresentation
The object representation as node.

Specified by:
asNode in interface IPresentation
Returns:
Node representation.


Copyright © 2014. All rights reserved.