package org.cagrid.core.resource;
import javax.xml.namespace.QName;
import org.cagrid.wsrf.properties.InvalidResourceKeyException;
import org.cagrid.wsrf.properties.NoSuchResourceException;
import org.cagrid.wsrf.properties.RemoveNotSupportedException;
import org.cagrid.wsrf.properties.Resource;
import org.cagrid.wsrf.properties.ResourceException;
import org.cagrid.wsrf.properties.ResourceHome;
import org.cagrid.wsrf.properties.ResourceKey;
public class SingletonResourceHomeImpl implements ResourceHome {
private final Class<?> keyTypeClass;
private final QName keyTypeName;
private final Resource resource;
public SingletonResourceHomeImpl(Resource resource) {
this(null, null, resource);
}
public SingletonResourceHomeImpl(Class<?> keyTypeClass, QName keyTypeName,
Resource resource) {
this.keyTypeClass = keyTypeClass;
this.keyTypeName = keyTypeName;
this.resource = resource;
}
@Override
public Class<?> getKeyTypeClass() {
return keyTypeClass;
}
@Override
public QName getKeyTypeName() {
return keyTypeName;
}
@Override
public Resource find(ResourceKey key) throws ResourceException,
NoSuchResourceException, InvalidResourceKeyException {
return resource;
}
@Override
public void remove(ResourceKey key) throws ResourceException,
NoSuchResourceException, InvalidResourceKeyException,
RemoveNotSupportedException {
throw new RemoveNotSupportedException();
}
}