CpcClassification extends PatentClassification { @Override public boolean equals(Object obj) { if (obj == null) { return false; } if (getClass() != obj.getClass()) { return false; } final CpcClassification other = (CpcClassification) obj; if (this == other || other.toText().equals(toText()) ) { return true; } return false; } CpcClassification(String originalText, boolean mainOrInventive); boolean isParseFailed(); @Override ClassificationType getType(); String getSection(); void setSection(String section); String getMainClass(); void setMainClass(String mainClass); String getSubClass(); void setSubClass(String subClass); String[] getMainGroup(); void setMainGroup(String[] mainGroup); String[] getSubGroup(); void setSubGroup(String[] subGroup); @Override String getTextNormalized(); @Override List<String> getSearchTokens(); String standardize(); @Override Tree getTree(); @Override int getDepth(); @Override boolean isContained(PatentClassification check); @Override boolean equals(Object obj); @Override void parseText(final String classificationStr); @Override boolean validate(); @Override String toString(); static Map<String, List<CpcClassification>> filterCpc(
			Collection<T> classes);  }
@Test public void testEquals() throws ParseException { CpcClassification cpc1 = new CpcClassification("D07B2201", false); cpc1.parseText("D07B2201"); CpcClassification cpc2 = new CpcClassification("D07B2201", false); cpc2.parseText("D07B2201"); assertEquals(cpc1, cpc2); }