|
From: <pe...@us...> - 2003-09-22 19:24:37
|
Update of /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/resolver
In directory sc8-pr-cvs1:/tmp/cvs-serv4908/src/java/org/neuclear/id/resolver
Modified Files:
NSResolver.java
Log Message:
More fixes throughout to problems caused by renaming.
Index: NSResolver.java
===================================================================
RCS file: /cvsroot/neuclear/neuclear-id/src/java/org/neuclear/id/resolver/NSResolver.java,v
retrieving revision 1.1.1.1
retrieving revision 1.2
diff -C2 -d -r1.1.1.1 -r1.2
*** NSResolver.java 19 Sep 2003 14:41:09 -0000 1.1.1.1
--- NSResolver.java 22 Sep 2003 19:24:01 -0000 1.2
***************
*** 7,11 ****
import org.neuclear.id.verifier.NSVerifier;
import org.neuclear.source.Source;
! import org.neuclear.utils.NeudistException;
import java.security.PublicKey;
--- 7,11 ----
import org.neuclear.id.verifier.NSVerifier;
import org.neuclear.source.Source;
! import org.neudist.utils.NeudistException;
import java.security.PublicKey;
***************
*** 15,53 ****
*/
public final class NSResolver {
! private static final NSCache NSCACHE=NSCache.make();
! public static final String NSROOTSTORE="http://repository.neuclear.org";
/**
! * Retrieves the NameSpace object of the given name
! * defaultstore for the given namespace.
! * This is guaranteed to be valid as it checks the signatures on each level.
! * @param name
! * @return
! */
! public final static NameSpace resolveNameSpace(String name) throws NeudistException,InvalidNameSpaceException{
! NameSpace ns=NSCACHE.fetchCached(name);
! if (ns!=null)
! return ns;
! String parentname=NSTools.getParentNSURI(name);
! String store=NSROOTSTORE;
! boolean isRootlevel=parentname==null||parentname.equals("neu://");
! NameSpace parent=null;
! if (!isRootlevel) {
! parent=resolveNameSpace(parentname);
! store=parent.getRepository();
! }
! // fetches NameSpace from parent NameSpace's Default Store
! ns=(NameSpace)Source.getInstance().fetch(store,name);
! if (ns==null)
! throw new NeudistException("NameSpace: "+name+" was not resolved");
! PublicKey parentkey=(isRootlevel)?NSVerifier.getRootPK():parent.getAllowed();
! if (!ns.verifySignature(parentkey))
! throw new InvalidNameSpaceException("NameSpace: "+name +" not allowed in "+parentname);
! NSCACHE.cache(ns);
! return ns; //This may not be null
! }
}
--- 15,53 ----
*/
public final class NSResolver {
! private static final NSCache NSCACHE = NSCache.make();
! public static final String NSROOTSTORE = "http://repository.neuclear.org";
/**
! * Retrieves the NameSpace object of the given name
! * defaultstore for the given namespace.
! * This is guaranteed to be valid as it checks the signatures on each level.
! * @param name
! * @return
! */
! public final static NameSpace resolveNameSpace(String name) throws NeudistException, InvalidNameSpaceException {
! NameSpace ns = NSCACHE.fetchCached(name);
! if (ns != null)
! return ns;
! String parentname = NSTools.getParentNSURI(name);
! String store = NSROOTSTORE;
! boolean isRootlevel = parentname == null || parentname.equals("neu://");
! NameSpace parent = null;
! if (!isRootlevel) {
! parent = resolveNameSpace(parentname);
! store = parent.getRepository();
! }
! // fetches NameSpace from parent NameSpace's Default Store
! ns = (NameSpace) Source.getInstance().fetch(store, name);
! if (ns == null)
! throw new NeudistException("NameSpace: " + name + " was not resolved");
! PublicKey parentkey = (isRootlevel) ? NSVerifier.getRootPK() : parent.getAllowed();
! if (!ns.verifySignature(parentkey))
! throw new InvalidNameSpaceException("NameSpace: " + name + " not allowed in " + parentname);
! NSCACHE.cache(ns);
! return ns; //This may not be null
! }
}
|