/************************************************************************
* Copyright (c) 2014-2015 IoT-Solutions e.U.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
************************************************************************/
package iot.jcypher.graph;
import iot.jcypher.database.IDBAccess;
import iot.jcypher.graph.internal.ChangeListener;
import iot.jcypher.graph.internal.GrId;
import iot.jcypher.query.result.JcError;
import iot.jcypher.query.result.util.ResultHandler;
import java.util.List;
import java.util.Map;
public class GrAccess {
public static List<JcError> store(Graph graph, Map<Long, Integer> elementVersionsMap) {
return graph.store(elementVersionsMap);
}
public static GrNode createNode(ResultHandler rh, GrId id, int rowIdx) {
return new GrNode(rh, id, rowIdx);
}
public static GrRelation createRelation(ResultHandler rh, GrId id,
GrId startNodeId, GrId endNodeId, int rowIdx) {
return new GrRelation(rh, id, startNodeId, endNodeId, rowIdx);
}
public static GrRelation createRelation(ResultHandler rh, GrId id,
GrId startNodeId, GrId endNodeId, String type) {
return new GrRelation(rh, id, startNodeId, endNodeId, type);
}
public static GrPath createPath(ResultHandler rh,
GrId startNodeId, GrId endNodeId, List<GrId> relIds, int rowIdx) {
return new GrPath(rh, startNodeId, endNodeId, relIds, rowIdx);
}
public static GrProperty createProperty(String name) {
return new GrProperty(name);
}
public static GrLabel createLabel(String name) {
return new GrLabel(name);
}
public static Graph createGraph(ResultHandler resultHandler) {
return new Graph(resultHandler);
}
public static void setState(PersistableItem item, SyncState state) {
item.setSyncState(state);
}
public static SyncState getState(PersistableItem item) {
return item.getSyncState();
}
public static void setGraphState(Graph graph, SyncState state) {
graph.setSyncState(state);
}
public static SyncState getGraphState(Graph graph) {
return graph.getSyncState();
}
public static void addChangeListener(ChangeListener listener, PersistableItem item) {
item.addChangeListener(listener);
}
public static void removeChangeListener(ChangeListener listener, PersistableItem item) {
item.removeChangeListener(listener);
}
public static GrId getGrId(GrPropertyContainer pc) {
return pc.getGrId();
}
public static void setGrId(GrId grId, GrPropertyContainer pc) {
pc.setGrId(grId);
}
public static void notifyState(PersistableItem item) {
item.notifyState();
}
public static List<GrProperty> getModifiedProperties(GrPropertyContainer container) {
PersistableItemsContainer<GrProperty> icont = container.getPropertiesContainer();
return icont.getModifiedElements();
}
public static List<GrLabel> getModifiedLabels(GrNode node) {
PersistableItemsContainer<GrLabel> lcont = node.getLabelsContainer();
return lcont.getModifiedElements();
}
public static void setToSynchronized(PersistableItem item) {
item.setToSynchronized();
}
public static void setDBAccess(IDBAccess dbAccess, Graph graph) {
graph.setDBAccess(dbAccess);
}
}