package com.feedly.cassandra.entity.enhance;
import java.lang.reflect.Field;
import com.feedly.cassandra.anno.Column;
import com.feedly.cassandra.anno.EmbeddedEntity;
import com.feedly.cassandra.dao.CounterColumn;
import com.feedly.cassandra.entity.EntityUtils;
@EmbeddedEntity
public class EmbeddedCounterBean
{
@Column(name="s")
private String strProp;
@Column(name="c")
private CounterColumn counterProp;
public String getStrProp()
{
return strProp;
}
public void setStrProp(String strProp)
{
this.strProp = strProp;
}
public CounterColumn getCounterProp()
{
return counterProp;
}
public void setCounterProp(CounterColumn counterProp)
{
this.counterProp = counterProp;
}
@Override
public boolean equals(Object obj)
{
if(obj instanceof EmbeddedCounterBean)
return EntityUtils.beanFieldsEqual(this, obj);
return false;
}
@Override
public String toString()
{
StringBuilder b = new StringBuilder();
for(Field f : getClass().getDeclaredFields())
{
if(f.getName().startsWith("__"))
continue;
try
{
b.append(f.getName() + ":" + f.get(this)).append(" ");
}
catch(Exception e)
{
return "error";
}
}
return b.toString();
}
}