/*****************************************************************************
* Copyright [2013] [Jules White] *
* *
* 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 org.magnum.soda.svc;
import org.magnum.soda.msg.MetaAddress;
import org.magnum.soda.proxy.ObjRef;
import org.magnum.soda.proxy.ProxyFactory;
import org.magnum.soda.proxy.SodaInferReturnTypeFromArgument;
public interface NamingService {
public static final String SVC_NAME = "naming";
public static final ObjRef ROOT_NAMING_SVC = new ObjRef(
ObjRef.createObjUri(MetaAddress.META_ADDRESS.toString(), SVC_NAME),
NamingService.class.getName());
@SodaInferReturnTypeFromArgument(index=0)
public <T> T get(Class<T> type, String name);
public Object get(String name);
public void bind(Object o, String name);
public NamingService getParent();
public void setParent(NamingService parent, ProxyFactory fact);
}