@Override public void writePath( NodeValue[] nodes, RelationshipValue[] relationships ) { if ( nodes.length == 0 ) { return; } //Path guarantees that nodes.length = edges.length = 1 nodes[0].writeTo( this ); for ( int i = 0; i < relationships.length; i++ ) { relationships[i].writeTo( this ); append( ">" ); nodes[i + 1].writeTo( this ); } }
@Test public void shouldHandleNodes() { // Given NodeValue nodeValue = nodeValue( 42L, stringArray( "L" ), EMPTY_MAP ); // When nodeValue.writeTo( converter ); // Then assertThat( converter.value(), equalTo( VirtualValues.node( 42L ) ) ); }
@Test void shouldHandleNodeValueWithoutProperties() { // Given NodeValue node = VirtualValues.nodeValue( 42L, Values.stringArray( "L1", "L2", "L3" ), EMPTY_MAP ); PrettyPrinter printer = new PrettyPrinter(); // When node.writeTo( printer ); // Then assertThat( printer.value(), equalTo( "(id=42 :L1:L2:L3)" ) ); }
@Test void shouldHandleNodeValueWithoutLabelsNorProperties() { // Given NodeValue node = VirtualValues.nodeValue( 42L, Values.stringArray(), EMPTY_MAP ); PrettyPrinter printer = new PrettyPrinter(); // When node.writeTo( printer ); // Then assertThat( printer.value(), equalTo( "(id=42)" ) ); }
@Test void shouldHandleEdgeValueWithoutLabelsNorProperties() { // Given NodeValue node = VirtualValues.nodeValue( 42L, Values.stringArray(), EMPTY_MAP ); PrettyPrinter printer = new PrettyPrinter(); // When node.writeTo( printer ); // Then assertThat( printer.value(), equalTo( "(id=42)" ) ); }
private void writeNodesForPath( NodeValue[] nodes ) throws IOException { nodeIndexes.reset( nodes.length ); for ( NodeValue node : nodes ) { nodeIndexes.putIfAbsent( node.id(), nodeIndexes.size() ); } int size = nodeIndexes.size(); packListHeader( size ); if ( size > 0 ) { NodeValue node = nodes[0]; for ( long id : nodeIndexes.keys() ) { int i = 1; while ( node.id() != id ) { node = nodes[i++]; } node.writeTo( this ); } } }
@Test void shouldHandleNodeValue() { // Given NodeValue node = VirtualValues.nodeValue( 42L, Values.stringArray( "L1", "L2", "L3" ), props( "foo", intValue( 42 ), "bar", list( intValue( 1337 ), stringValue( "baz" ) ) ) ); PrettyPrinter printer = new PrettyPrinter(); // When node.writeTo( printer ); // Then assertThat( printer.value(), equalTo( "(id=42 :L1:L2:L3 {bar: [1337, \"baz\"], foo: 42})" ) ); }
@Test void shouldHandleNodeValueWithoutLabels() { // Given NodeValue node = VirtualValues.nodeValue( 42L, Values.stringArray(), props( "foo", intValue( 42 ), "bar", list( intValue( 1337 ), stringValue( "baz" ) ) ) ); PrettyPrinter printer = new PrettyPrinter(); // When node.writeTo( printer ); // Then assertThat( printer.value(), equalTo( "(id=42 {bar: [1337, \"baz\"], foo: 42})" ) ); }
@Override public void writePath( NodeValue[] nodes, RelationshipValue[] relationships ) { if ( nodes.length == 0 ) { return; } //Path guarantees that nodes.length = edges.length = 1 nodes[0].writeTo( this ); for ( int i = 0; i < relationships.length; i++ ) { relationships[i].writeTo( this ); append( ">" ); nodes[i + 1].writeTo( this ); } }
private void writeNodesForPath( NodeValue[] nodes ) throws IOException { nodeIndexes.reset( nodes.length ); for ( NodeValue node : nodes ) { nodeIndexes.putIfAbsent( node.id(), nodeIndexes.size() ); } int size = nodeIndexes.size(); packListHeader( size ); if ( size > 0 ) { NodeValue node = nodes[0]; for ( long id : nodeIndexes.keys() ) { int i = 1; while ( node.id() != id ) { node = nodes[i++]; } node.writeTo( this ); } } }