matches)
{
super(null);
this.dbObject = dbObject;
this.matches = matches;
}
@Override
public String describe()
{
if (matches.size() > SHOW_MAX_MATCHES)
{
return I18NUtil.getMessage(
"system.schema_comp.redundant_obj.many_matches",
matches.size(),
dbObject,
describeMatches(),
matches.size() - SHOW_MAX_MATCHES);
}
else
{
return I18NUtil.getMessage(
"system.schema_comp.redundant_obj",
matches.size(),
dbObject,
describeMatches());
}
}
/**
* Produces a comma separated list of matching redundant database objects. For example:
*
* MyDbObject[name=match1], MyDbObject[name=match2], MyDbObject[name=match3]
*
* At most {@link #SHOW_MAX_MATCHES} will be included.
*
* @return String
*/
private String describeMatches()
{
StringBuilder sb = new StringBuilder();
for (int i = 0; i < matches.size() && i < SHOW_MAX_MATCHES; i++)
{
if (i > 0)
{
sb.append(", ");
}
sb.append(matches.get(i));
}
return sb.toString();
}
@Override
public String toString()
{
return "RedundantDbObject [dbObject=" + this.dbObject + ", matches=" + this.matches + "]";
}
}