package com.ldbc.driver.workloads.ldbc.snb.bi;
public class LdbcSnbBiQuery1PostingSummaryResult
{
public static final int CATEGORY_SHORT = 0;
public static final int CATEGORY_ONE_LINER = 1;
public static final int CATEGORY_TWEET = 2;
public static final int CATEGORY_LONG = 3;
private final int year;
private final boolean isComment;
private final int messageLengthCategory;
private final long messageCount;
private final long messageLengthMean;
private final long messageLengthSum;
private final float percentOfTotalMessageCount;
public LdbcSnbBiQuery1PostingSummaryResult(
int year,
boolean isComment,
int messageLengthCategory,
long messageCount,
long messageLengthMean,
long messageLengthSum,
float percentOfTotalMessageCount )
{
this.year = year;
this.isComment = isComment;
this.messageLengthCategory = messageLengthCategory;
this.messageCount = messageCount;
this.messageLengthMean = messageLengthMean;
this.messageLengthSum = messageLengthSum;
this.percentOfTotalMessageCount = percentOfTotalMessageCount;
}
public int year()
{
return year;
}
public boolean isComment()
{
return isComment;
}
public int messageLengthCategory()
{
return messageLengthCategory;
}
public long messageCount()
{
return messageCount;
}
public long messageLengthMean()
{
return messageLengthMean;
}
public long messageLengthSum()
{
return messageLengthSum;
}
public float percentOfTotalMessageCount()
{
return percentOfTotalMessageCount;
}
@Override
public String toString()
{
return "LdbcSnbBiQuery1Result{" +
"year=" + year +
", isComment=" + isComment +
", messageLengthCategory=" + messageLengthCategory +
", messageCount=" + messageCount +
", messageLengthMean=" + messageLengthMean +
", messageLengthSum=" + messageLengthSum +
", percentOfTotalMessageCount=" + percentOfTotalMessageCount +
'}';
}
@Override
public boolean equals( Object o )
{
if ( this == o )
{ return true; }
if ( o == null || getClass() != o.getClass() )
{ return false; }
LdbcSnbBiQuery1PostingSummaryResult that = (LdbcSnbBiQuery1PostingSummaryResult) o;
if ( year != that.year )
{ return false; }
if ( isComment != that.isComment )
{ return false; }
if ( messageLengthCategory != that.messageLengthCategory )
{ return false; }
if ( messageCount != that.messageCount )
{ return false; }
if ( messageLengthMean != that.messageLengthMean )
{ return false; }
if ( messageLengthSum != that.messageLengthSum )
{ return false; }
return floatEpsilonCompare( that.percentOfTotalMessageCount, percentOfTotalMessageCount, EPSILON );
}
@Override
public int hashCode()
{
int result = year;
result = 31 * result + (isComment ? 1 : 0);
result = 31 * result + messageLengthCategory;
result = 31 * result + (int) (messageCount ^ (messageCount >>> 32));
result = 31 * result + (int) (messageLengthMean ^ (messageLengthMean >>> 32));
result = 31 * result + (int) (messageLengthSum ^ (messageLengthSum >>> 32));
result = 31 * result +
(percentOfTotalMessageCount != +0.0f ? Float.floatToIntBits( percentOfTotalMessageCount ) : 0);
return result;
}
private static final float EPSILON = 0.00001f;
private boolean floatEpsilonCompare( float a, float b, float epsilon )
{
return Math.abs( a - b ) <= epsilon;
}
}