From d6cfc7505be13b3b09adf423206cf75d9f806c12 Mon Sep 17 00:00:00 2001 From: Andrew Branson Date: Mon, 18 Feb 2013 15:01:46 +0100 Subject: Initial Interface creation. Some compilation problems remain. --- src/main/java/com/c2kernel/lookup/Lookup.java | 100 ++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 src/main/java/com/c2kernel/lookup/Lookup.java (limited to 'src/main/java/com/c2kernel/lookup/Lookup.java') diff --git a/src/main/java/com/c2kernel/lookup/Lookup.java b/src/main/java/com/c2kernel/lookup/Lookup.java new file mode 100644 index 0000000..0ddc448 --- /dev/null +++ b/src/main/java/com/c2kernel/lookup/Lookup.java @@ -0,0 +1,100 @@ +/* + * Lookup.java + * + * Copyright (c) 2013, The CRISTAL Consortium. All rights reserved. + * + * CRISTAL kernel is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 3 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library. If not, see: + * http://www.gnu.org/licenses/ + */ + +package com.c2kernel.lookup; + +import java.util.Enumeration; + +import org.omg.CORBA.Object; + +import com.c2kernel.common.ObjectAlreadyExistsException; +import com.c2kernel.common.ObjectCannotBeUpdated; +import com.c2kernel.common.ObjectNotFoundException; + +public interface Lookup { + + /** + * @param path + * @return + */ + public Class getEntityClass(Path path) throws ObjectNotFoundException; + + /** + * @return + */ + public NextKeyManager getNextKeyManager(); + + /** + * @return + */ + public RoleManager getRoleManager(); + + /** + * @param path + * @return + */ + public Object resolve(Path path) throws ObjectNotFoundException; + + /** + * @param path + * @param name + * @return + */ + public Enumeration search(Path path, String name); + + /** + * @param newPath + */ + public void add(Path newPath) throws ObjectCannotBeUpdated, ObjectAlreadyExistsException; + + /** + * @param domainPath + * @return + */ + public Enumeration searchEntities(Path path); + + /** + * @param path + */ + public void delete(Path path) throws ObjectCannotBeUpdated; + + /** + * @param path + * @return + */ + public boolean exists(Path path); + + /** + * @param domainPath + * @return + */ + public EntityPath resolvePath(DomainPath domainPath) throws InvalidEntityPathException, ObjectNotFoundException; + + /** + * + */ + public void disconnect(); + + /** + * + */ + public void install() throws ObjectNotFoundException; + +} -- cgit v1.2.3