Ejemplo n.º 1
0
 @Override
 public StandardExpander add(RelationshipType type, Direction direction) {
   Exclusion excluded = exclusion.get(type.name());
   final Map<String, Exclusion> newExclusion;
   if (((excluded == null) ? defaultExclusion : excluded).includes(direction)) {
     return this;
   } else {
     excluded = Exclusion.include(direction);
     if (excluded == defaultExclusion) {
       if (exclusion.size() == 1) {
         return new AllExpander(defaultExclusion.direction);
       } else {
         newExclusion = new HashMap<String, Exclusion>(exclusion);
         newExclusion.remove(type.name());
       }
     } else {
       newExclusion = new HashMap<String, Exclusion>(exclusion);
       newExclusion.put(type.name(), excluded);
     }
   }
   return new ExcludingExpander(defaultExclusion, newExclusion);
 }
Ejemplo n.º 2
0
 @Override
 public StandardExpander remove(RelationshipType type) {
   Map<String, Exclusion> exclude = new HashMap<String, Exclusion>();
   exclude.put(type.name(), Exclusion.ALL);
   return new ExcludingExpander(Exclusion.include(direction), exclude);
 }