@Override public Model getModel(URI contextURI) { Model model = super.getModel(contextURI); NotifyingModelLayer notifyingModel = new NotifyingModelLayer(model); for (Map.Entry<ModelChangedListener, QuadPattern> entry : this.modelsetChangeListener .entrySet()) { if (entry.getValue().getContext() == Variable.ANY || entry.getValue().getContext().equals(contextURI)) { notifyingModel.addModelChangedListener(entry.getKey(), entry .getValue()); } } return notifyingModel; }
@Override public Model getDefaultModel() { Model model = super.getDefaultModel(); NotifyingModelLayer notifyingModel = new NotifyingModelLayer(model); for (Map.Entry<ModelChangedListener, QuadPattern> entry : this.modelsetChangeListener .entrySet()) { // only if listening for (*, x,y,z) changes in default model are // detected if (entry.getValue().getContext() == Variable.ANY) { notifyingModel.addModelChangedListener(entry.getKey(), entry .getValue()); } } return notifyingModel; }
@Override public Model getModel(URI contextURI) { Model model = super.getModel(contextURI); NotifyingModelLayer notifyingModel = new NotifyingModelLayer(model); for (Map.Entry<ModelChangedListener, QuadPattern> entry : this.modelsetChangeListener .entrySet()) { if (entry.getValue().getContext() == Variable.ANY || entry.getValue().getContext().equals(contextURI)) { notifyingModel.addModelChangedListener(entry.getKey(), entry .getValue()); } } return notifyingModel; }
@Override public Model getDefaultModel() { Model model = super.getDefaultModel(); NotifyingModelLayer notifyingModel = new NotifyingModelLayer(model); for (Map.Entry<ModelChangedListener, QuadPattern> entry : this.modelsetChangeListener .entrySet()) { // only if listening for (*, x,y,z) changes in default model are // detected if (entry.getValue().getContext() == Variable.ANY) { notifyingModel.addModelChangedListener(entry.getKey(), entry .getValue()); } } return notifyingModel; }
@Override public ClosableIterator<Model> getModels() { List<Model> models = new ArrayList<Model>(); ClosableIterator<? extends Model> it = super.getModels(); // wrap all into NotifyingModels while (it.hasNext()) { Model model = it.next(); NotifyingModelLayer notifyingModel = new NotifyingModelLayer(model); for (Map.Entry<ModelChangedListener, QuadPattern> entry : this.modelsetChangeListener .entrySet()) { notifyingModel.addModelChangedListener(entry.getKey(), entry .getValue()); } models.add(notifyingModel); } it.close(); return new PseudoClosableIterator<Model>(models.iterator()); }
@Override public ClosableIterator<Model> getModels() { List<Model> models = new ArrayList<Model>(); ClosableIterator<? extends Model> it = super.getModels(); // wrap all into NotifyingModels while (it.hasNext()) { Model model = it.next(); NotifyingModelLayer notifyingModel = new NotifyingModelLayer(model); for (Map.Entry<ModelChangedListener, QuadPattern> entry : this.modelsetChangeListener .entrySet()) { notifyingModel.addModelChangedListener(entry.getKey(), entry .getValue()); } models.add(notifyingModel); } it.close(); return new PseudoClosableIterator<Model>(models.iterator()); }
@Override public void setUp() { super.setUp(); Model plainModel = getModelFactory().createModel(); assertNotNull(plainModel); this.notifyingModel = new NotifyingModelLayer(plainModel); }