/** * This may cause undirected edges to be inconsistent as the source and * destination values may not be ordered correctly. * * @param identifierType the identifier type to update * @param value the identifier value */ @Override void putIdentifier(final IdentifierType identifierType, final Object value) { switch (identifierType) { case GROUP: setGroup((String) value); break; case SOURCE: case MATCHED_VERTEX: source = value; break; case DESTINATION: case ADJACENT_MATCHED_VERTEX: destination = value; break; case DIRECTED: directed = (null != value && (value instanceof Boolean && (boolean) value) || (value instanceof DirectedType && ((DirectedType) value).isDirected())); break; default: LOGGER.error("Unknown identifier type: {} detected.", identifierType); } }
@Test public void shouldSetIdentifiers() { // Given final Edge edge1 = new Edge(TestGroups.EDGE, 1, 2, false); final Edge edge2 = new Edge(TestGroups.EDGE_2, 4, 3, false); // When edge1.setIdentifiers(4, 3, false); edge1.setGroup(TestGroups.EDGE_2); // Then assertEquals(3, edge1.getSource()); assertThat(edge1, equalTo(edge2)); }
/** * This may cause undirected edges to be inconsistent as the source and * destination values may not be ordered correctly. * * @param identifierType the identifier type to update * @param value the identifier value */ @Override void putIdentifier(final IdentifierType identifierType, final Object value) { switch (identifierType) { case GROUP: setGroup((String) value); break; case SOURCE: case MATCHED_VERTEX: source = value; break; case DESTINATION: case ADJACENT_MATCHED_VERTEX: destination = value; break; case DIRECTED: directed = (null != value && (value instanceof Boolean && (boolean) value) || (value instanceof DirectedType && ((DirectedType) value).isDirected())); break; default: LOGGER.error("Unknown identifier type: {} detected.", identifierType); } }