SpecificationItemId implements Comparable<SpecificationItemId> { public static SpecificationItemId createId(final String artifactType, final String name, final int revision) { return new SpecificationItemId.Builder().artifactType(artifactType).name(name) .revision(revision).build(); } protected  SpecificationItemId(final String name, final String artifactType, final int revision); String getName(); int getRevision(); String getArtifactType(); @Override @Generated(value = "org.eclipse.Eclipse") final int hashCode(); @Override @Generated(value = "org.eclipse.Eclipse") final boolean equals(final Object obj); @Override String toString(); SpecificationItemId toRevisionWildcard(); static SpecificationItemId parseId(final String idText); static SpecificationItemId createId(final String artifactType, final String name,
            final int revision); static SpecificationItemId createId(final String artifactType, final String name); @Override int compareTo(final SpecificationItemId other); static final String UNKNOWN_ARTIFACT_TYPE; static final String ITEM_REVISION_PATTERN; static final String ITEM_NAME_PATTERN; static final String ARTIFACT_TYPE_SEPARATOR; static final String REVISION_SEPARATOR; static final int REVISION_WILDCARD; static final Pattern ID_PATTERN; static final Pattern LEGACY_NAME_PATTERN; static final Pattern LEGACY_ID_PATTERN; }
@Test void testCreateId() { final SpecificationItemId id = createId(ARTIFACT_TYPE_FEATURE, NAME, REVISION); assertThat(id, equalTo(new Builder().artifactType(ARTIFACT_TYPE_FEATURE).name(NAME) .revision(REVISION).build())); }
@Test void testCreateIdWithoutRevision() { final SpecificationItemId id = createId(ARTIFACT_TYPE_FEATURE, NAME); assertThat(id, equalTo(new Builder().artifactType(ARTIFACT_TYPE_FEATURE).name(NAME) .revision(Integer.MIN_VALUE).build())); }