org.hackystat.projectbrowser.page.dailyprojectdata.build
Class BuildData

java.lang.Object
  extended by org.hackystat.projectbrowser.page.dailyprojectdata.build.BuildData
All Implemented Interfaces:
java.io.Serializable

public class BuildData
extends java.lang.Object
implements java.io.Serializable

Data structure for representing build information about a single project. This representation includes the Project, plus Buckets containing DPD Build MemberData instances for the passing and failing instances. Bucket 0 contains MemberData instances with passing build info, and Bucket 1 contains MemberData instances with failing build info. Note that the same MemberData instance can appear in both buckets.

Author:
Philip Johnson, Shaoxuan Zhang
See Also:
Serialized Form

Constructor Summary
BuildData(org.hackystat.sensorbase.resource.projects.jaxb.Project name)
          Creates a new BuildData instance.
 
Method Summary
 void addEntry(org.hackystat.dailyprojectdata.resource.build.jaxb.MemberData memberData)
          Updates this BuildData instance with information about the numbers of passes and failures for a given instance in the Project.
 java.lang.String getBucketCountString(int bucket)
          Returns the current value of the specified bucket as a string.
 int getBucketPercentage(int bucket)
          Returns the bucket value as a percentage of the total number of entries across all buckets.
 java.lang.String getBucketPercentageString(int bucket)
          Returns the bucket percentage as a string.
 int getBucketValue(int bucket)
          Returns the current value of the specified bucket.
 DailyProjectDetailsPanel getPanel(java.lang.String id, int bucket, boolean isCount)
          Returns a details panel containing information about this bucket.
 org.hackystat.sensorbase.resource.projects.jaxb.Project getProject()
          Return the project associated with this data.
 int getTotal()
          Returns the total number of entries across all buckets.
 java.lang.String getTotalString()
          Returns the total number of entries across all buckets as a string.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BuildData

public BuildData(org.hackystat.sensorbase.resource.projects.jaxb.Project name)
Creates a new BuildData instance.

Parameters:
name - The name of the Project associated with this instance.
Method Detail

addEntry

public void addEntry(org.hackystat.dailyprojectdata.resource.build.jaxb.MemberData memberData)
Updates this BuildData instance with information about the numbers of passes and failures for a given instance in the Project.

Parameters:
memberData - The data to be added.

getBucketValue

public int getBucketValue(int bucket)
Returns the current value of the specified bucket.

Parameters:
bucket - The bucket number, where 0 is successes and 1 is failures.
Returns:
The value inside the given bucket.

getTotal

public int getTotal()
Returns the total number of entries across all buckets.

Returns:
The total number of entries.

getTotalString

public java.lang.String getTotalString()
Returns the total number of entries across all buckets as a string.

Returns:
The total number of entries.

getBucketPercentage

public int getBucketPercentage(int bucket)
Returns the bucket value as a percentage of the total number of entries across all buckets. Returns zero if there are no entries.

Parameters:
bucket - The bucket whose percentage is to be returned.
Returns:
The bucket as a percentage.

getBucketCountString

public java.lang.String getBucketCountString(int bucket)
Returns the current value of the specified bucket as a string.

Parameters:
bucket - The bucket number, where 0 is the first one and 4 is the last one.
Returns:
The value inside the given bucket.

getBucketPercentageString

public java.lang.String getBucketPercentageString(int bucket)
Returns the bucket percentage as a string.

Parameters:
bucket - The bucket.
Returns:
Its percentage as a string.

getProject

public org.hackystat.sensorbase.resource.projects.jaxb.Project getProject()
Return the project associated with this data.

Returns:
The project.

getPanel

public DailyProjectDetailsPanel getPanel(java.lang.String id,
                                         int bucket,
                                         boolean isCount)
Returns a details panel containing information about this bucket.

Parameters:
id - The wicket id for this panel.
bucket - The bucket of interest.
isCount - True if the count should be returned, false if percentage.
Returns:
The DailyProjectDetailsPanel instance.