@@ -0,0 +1,1255 @@
+/*%0A * Copyright (c) 2012 Mateusz Parzonka, Eric Bodden%0A * All rights reserved. This program and the accompanying materials%0A * are made available under the terms of the Eclipse Public License v1.0%0A * which accompanies this distribution, and is available at%0A * http://www.eclipse.org/legal/epl-v10.html%0A *%0A * Contributors:%0A * Mateusz Parzonka - initial API and implementation%0A */%0Apackage prm4j.indexing.realtime;%0A%0Aimport java.util.ArrayDeque;%0Aimport java.util.Deque;%0A%0Aimport prm4j.indexing.staticdata.MetaNode;%0A%0A/**%0A * %7B@link DefaultNodeStore%7D which is aware of all nodes it produces and retrieves.%0A */%0Apublic class AwareDefaultNodeStore extends DefaultNodeStore %7B%0A%0A    private final Deque%3CNode%3E retrievedNodes;%0A%0A    public AwareDefaultNodeStore(MetaNode metaTree) %7B%0A%09super(metaTree);%0A%09retrievedNodes = new ArrayDeque%3CNode%3E();%0A    %7D%0A%0A    @Override%0A    public Node getNode(LowLevelBinding%5B%5D bindings) %7B%0A%09Node node = super.getNode(bindings);%0A%09getListOfNodes().add(node);%0A%09return node;%0A    %7D%0A%0A    @Override%0A    public Node getNode(LowLevelBinding%5B%5D bindings, int%5B%5D parameterMask) %7B%0A%09Node node = super.getNode(bindings, parameterMask);%0A%09getListOfNodes().add(node);%0A%09return node;%0A    %7D%0A%0A    public Deque%3CNode%3E getListOfNodes() %7B%0A%09return retrievedNodes;%0A    %7D%0A%0A%7D%0A

Add AwareDefaultNodeStore