Example #1
0
 public void rename(Value oldName, Value newName) {
   if (newName == null) // if (oldName == null || newName == null)
   throw new NullPointerException();
   Long id = toId(oldName);
   context.idToEntity.put(id, newName);
   context.entityToId.put(newName, id);
   Long newId = context.entityToId.get(newName);
   if (newId != null)
     for (Entry entry : store.iterate(LongField.SUBJECT, LongField.PREDICATE, LongField.OBJECT)) {
       Long newSubject = null, newPredicate = null, newObject = null;
       Long subject = entry.get(LongField.SUBJECT),
           predicate = entry.get(LongField.PREDICATE),
           object = entry.get(LongField.OBJECT);
       if (newId.equals(subject)) newSubject = id;
       if (newId.equals(predicate)) newPredicate = id;
       if (newId.equals(object)) newObject = id;
       if (newSubject != null || newPredicate != null || newObject != null) {
         store.remove(
             LongField.SUBJECT.value(subject),
             LongField.PREDICATE.value(predicate),
             LongField.OBJECT.value(object));
         store.remove(
             LongField.PREDICATE.value(predicate),
             LongField.OBJECT.value(object),
             LongField.SUBJECT.value(subject));
         store.put(
             LongField.SUBJECT.value(newSubject == null ? subject : newSubject),
             LongField.PREDICATE.value(newPredicate == null ? predicate : newPredicate),
             LongField.OBJECT.value(newObject == null ? object : newObject));
       }
     }
 }
Example #2
0
 public Iterable<Value> values(Value subject, Value predicate) {
   return new EntryConverter<Value>(
       store.iterate(
           LongField.SUBJECT.value(toId(subject)),
           LongField.PREDICATE.value(toId(predicate)),
           LongField.OBJECT),
       ENTRY_TO_OBJECT);
 }
Example #3
0
 public void add(Iterator<Triple> statements) {
   while (statements.hasNext()) {
     Triple statement = statements.next();
     store.put(
         LongField.SUBJECT.value(toId(statement.getSubject())),
         LongField.PREDICATE.value(toId(statement.getPredicate())),
         LongField.OBJECT.value(toId(statement.getObject())));
   }
 }
Example #4
0
 public Value first(Value subject, Value predicate) {
   EntryConverter<Value> list =
       new EntryConverter<Value>(
           store.iterate(
               LongField.SUBJECT.value(toId(subject)),
               LongField.PREDICATE.value(toId(predicate)),
               LongField.OBJECT),
           ENTRY_TO_OBJECT);
   Iterator<Value> iter = list.iterator();
   Value entity = iter.hasNext() ? iter.next() : null;
   return entity;
 }
Example #5
0
 public void add(Triple statement) {
   store.put(
       LongField.SUBJECT.value(toId(statement.getSubject())),
       LongField.PREDICATE.value(toId(statement.getPredicate())),
       LongField.OBJECT.value(toId(statement.getObject())));
 }