BEA Systems, Inc.

com.bea.rfid.workflow.util
Class TagListBuilder

java.lang.Object
  extended by com.bea.rfid.workflow.util.TagListBuilder

public class TagListBuilder
extends Object

Plain java class that may be used to extract Tags (com.connecterra.ale.api.ECReportGroupListMember) from ECReports or PCWriteReport. ECReports may contain multiple reports. User can specify the names of the reports of interest and Tags from just those reports will be extracted. User may also get just the count of tags by using the count version of the methods (getTagCount instead of getTagList).

If there are duplicate Tags in the reports of interest, this implementation does not get rid of the duplicates. The user application should get rid of duplicate Tags as necessary.

This implementation assumes single threaded operation and is not synchronized. If multiple threads access this concurrently, it must be synchronized externally.


Constructor Summary
TagListBuilder()
          No argument constructor.
TagListBuilder(Set reportNames)
          Constructor.
 
Method Summary
 void addReportNames(Collection reportNames)
          Adds the given report names to the set of filter report names for ECReports inputs.
 Set getReportNames()
          Returns the names of reports to filter on for ECReports inputs.
 int getTagCount(com.connecterra.ale.api.ECReports ecReports)
          Extracts tags from the given ECReports and returns the tag count.
 int getTagCount(com.connecterra.alepc.api.PCWriteReport pcWriteReport)
          Extracts tags from the given PCWriteReport and returns the tag count.
 List getTagList(com.connecterra.ale.api.ECReports ecReports)
          Extracts and returns list of Tags from the given ECReports.
 List getTagList(com.connecterra.alepc.api.PCWriteReport pcWriteReport)
          Extracts and returns list of Tags from the given PCWriteReport.
 void setReportNames(Set reportNames)
          Specified the names of reports to filter on for ECReports inputs.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TagListBuilder

public TagListBuilder()
No argument constructor. This should be used if there are no report names to filter on. The report names may be specified later using setReportNames method.


TagListBuilder

public TagListBuilder(Set reportNames)
Constructor.

Parameters:
reportNames - set with the names of the reports to filter on for ECReports inputs. If no report names are specified, tags will be extracted from all the reports in the input ECReports.
Method Detail

getReportNames

public Set getReportNames()
Returns the names of reports to filter on for ECReports inputs.

Returns:
set with the names of reports to filter on for ECReports inputs

setReportNames

public void setReportNames(Set reportNames)
Specified the names of reports to filter on for ECReports inputs. If no report names are specified, tags will be extracted from all the reports in the input ECReports.

Parameters:
reportNames - set with the names of reports to filter on for ECReports inputs

addReportNames

public void addReportNames(Collection reportNames)
Adds the given report names to the set of filter report names for ECReports inputs.

Parameters:
reportNames - collection with the report names that are to be added to set of filter report names for ECReports inputs

getTagList

public List getTagList(com.connecterra.ale.api.ECReports ecReports)
Extracts and returns list of Tags from the given ECReports. Only reports with the filter report names specified will be used. If no filter report names are specified, tags will be extracted from all the reports.

This distinguishes the case of no reports with the specified filter report names being found, by returning null. If empty reports are found, this will return empty list.

Parameters:
ecReports - ECReports from which tags must be extracted
Returns:
list of ECReportGroupListMembers extracted from the input. This will return null if filter report names are specified but no matching reports are found. If no Tags were found in the matching reports, this will return empty list.

getTagCount

public int getTagCount(com.connecterra.ale.api.ECReports ecReports)
Extracts tags from the given ECReports and returns the tag count. Only reports with the filter report names specified will be used. If no filter report names are specified, tags will be extracted from all the reports.

This distinguishes the case of no reports with the specified filter report names being found, by returning -1. If empty reports are found, this will return 0.

Parameters:
ecReports - ECReports from which tags must be extracted
Returns:
count of tags extracted from the input. This will return -1 if filter report names are specified but no matching reports are found. If no Tags were found in the matching reports, this will return 0.

getTagList

public List getTagList(com.connecterra.alepc.api.PCWriteReport pcWriteReport)
Extracts and returns list of Tags from the given PCWriteReport.

Parameters:
pcWriteReport - the PCWriteReport from which tags must be extracted
Returns:
list of ECReportGroupListMembers extracted from the input. If no Tags are found in the PCWriteReport, this will return empty list.

getTagCount

public int getTagCount(com.connecterra.alepc.api.PCWriteReport pcWriteReport)
Extracts tags from the given PCWriteReport and returns the tag count.

Parameters:
pcWriteReport - the PCWriteReport from which tag count should be found
Returns:
count of tags extracted from the input.

Documentation is available at
${DOCSWEBROOT}
Copyright 2007 BEA Systems Inc.