3535@ In (Triple .class )
3636@ Out (StreamReceiver .class )
3737public final class TripleCollect extends DefaultObjectPipe <Triple , StreamReceiver > {
38-
39- private String currentSubject ;
40- private final PartialRecordEmitter emitter = new PartialRecordEmitter ();
4138 private final FormetaParser parser = new FormetaParser ();
39+ private final PartialRecordEmitter emitter = new PartialRecordEmitter ();
40+
41+ private String currentSubject ;
4242
4343 public TripleCollect () {
4444 parser .setEmitter (emitter );
4545 }
46-
46+
4747 @ Override
4848 public void process (final Triple triple ) {
4949 if (currentSubject == null ) {
5050 currentSubject = triple .getSubject ();
5151 getReceiver ().startRecord (currentSubject );
5252 }
53+
5354 if (currentSubject .equals (triple .getSubject ())) {
5455 decodeTriple (triple );
5556 } else {
@@ -60,14 +61,14 @@ public void process(final Triple triple) {
6061 }
6162 }
6263
63- private void decodeTriple (final Triple triple ) {
64+ public void decodeTriple (final Triple triple ) {
6465 if (triple .getObjectType () == ObjectType .STRING ){
6566 getReceiver ().literal (triple .getPredicate (), triple .getObject ());
66- }else {
67- //getReceiver().startEntity(triple.getPredicate());
67+ }else if (triple .getObjectType () == ObjectType .ENTITY ){
6868 emitter .setDefaultName (triple .getPredicate ());
6969 parser .parse (triple .getObject ());
70- //getReceiver().endEntity();
70+ }else {
71+ throw new UnsupportedOperationException (triple .getObjectType () + " can not yet be decoded" );
7172 }
7273 }
7374
0 commit comments