[ 
https://issues.apache.org/jira/browse/RYA-414?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16310177#comment-16310177
 ] 

ASF GitHub Bot commented on RYA-414:
------------------------------------

Github user kchilton2 commented on a diff in the pull request:

    https://github.com/apache/incubator-rya/pull/256#discussion_r159510270
  
    --- Diff: 
dao/mongodb.rya/src/main/java/org/apache/rya/mongodb/dao/SimpleMongoDBNamespaceManager.java
 ---
    @@ -37,147 +37,145 @@
     
     public class SimpleMongoDBNamespaceManager implements 
MongoDBNamespaceManager {
     
    -   public class NamespaceImplementation implements Namespace {
    +    public class NamespaceImplementation implements Namespace {
     
    -           private final String namespace;
    -           private final String prefix;
    +        private final String namespace;
    +        private final String prefix;
     
    -           public NamespaceImplementation(final String namespace, final 
String prefix) {
    -                   this.namespace = namespace;
    -                   this.prefix = prefix;
    -           }
    +        public NamespaceImplementation(final String namespace, final 
String prefix) {
    +            this.namespace = namespace;
    +            this.prefix = prefix;
    +        }
     
    -           @Override
    -           public int compareTo(final Namespace o) {
    -                   if (!namespace.equalsIgnoreCase(o.getName())) {
    +        @Override
    +        public int compareTo(final Namespace o) {
    +            if (!namespace.equalsIgnoreCase(o.getName())) {
                     return namespace.compareTo(o.getName());
                 }
    -                   if (!prefix.equalsIgnoreCase(o.getPrefix())) {
    +            if (!prefix.equalsIgnoreCase(o.getPrefix())) {
                     return prefix.compareTo(o.getPrefix());
                 }
    -                   return 0;
    -           }
    -
    -           @Override
    -           public String getName() {
    -                   return namespace;
    -           }
    -
    -           @Override
    -           public String getPrefix() {
    -                   return prefix;
    -           }
    -
    -   }
    -
    -   public class MongoCursorIteration implements
    -                   CloseableIteration<Namespace, RyaDAOException> {
    -           private final DBCursor cursor;
    -
    -           public MongoCursorIteration(final DBCursor cursor2) {
    -                   this.cursor = cursor2;
    -           }
    -
    -           @Override
    -           public boolean hasNext() throws RyaDAOException {
    -                   return cursor.hasNext();
    -           }
    -
    -           @Override
    -           public Namespace next() throws RyaDAOException {
    -                   final DBObject ns = cursor.next();
    -                   final Map values = ns.toMap();
    -                   final String namespace = (String) values.get(NAMESPACE);
    -                   final String prefix = (String) values.get(PREFIX);
    -
    -                   final Namespace temp =  new 
NamespaceImplementation(namespace, prefix);
    -                   return temp;
    -           }
    -
    -           @Override
    -           public void remove() throws RyaDAOException {
    -                   next();
    -           }
    -
    -           @Override
    -           public void close() throws RyaDAOException {
    -                   cursor.close();
    -           }
    -
    -   }
    -
    -   private static final String ID = "_id";
    -   private static final String PREFIX = "prefix";
    -   private static final String NAMESPACE = "namespace";
    -   private MongoDBRdfConfiguration conf;
    -   private final DBCollection nsColl;
    -
    -
    -   public SimpleMongoDBNamespaceManager(final DBCollection 
nameSpaceCollection) {
    -           nsColl = nameSpaceCollection;
    -   }
    -
    -   @Override
    -   public void createIndices(final DBCollection coll){
    -           coll.createIndex(PREFIX);
    -           coll.createIndex(NAMESPACE);
    -   }
    -
    -
    -   @Override
    -   public void setConf(final MongoDBRdfConfiguration paramC) {
    -           this.conf = paramC;
    -   }
    -
    -   @Override
    -   public MongoDBRdfConfiguration getConf() {
    -           // TODO Auto-generated method stub
    -           return conf;
    -   }
    -
    -   @Override
    -   public void addNamespace(final String prefix, final String namespace)
    -                   throws RyaDAOException {
    -           final String id = prefix;
    -           byte[] bytes = id.getBytes(StandardCharsets.UTF_8);
    -           try {
    -                   final MessageDigest digest = 
MessageDigest.getInstance("SHA-1");
    -                   bytes = digest.digest(bytes);
    -           } catch (final NoSuchAlgorithmException e) {
    -                   // TODO Auto-generated catch block
    -                   e.printStackTrace();
    -           }
    -           final BasicDBObject doc = new BasicDBObject(ID, new 
String(Hex.encodeHex(bytes)))
    -           .append(PREFIX, prefix)
    -       .append(NAMESPACE, namespace);
    -           nsColl.insert(doc);
    -
    -   }
    -
    -   @Override
    -   public String getNamespace(final String prefix) throws RyaDAOException {
    +            return 0;
    +        }
    +
    +        @Override
    +        public String getName() {
    +            return namespace;
    +        }
    +
    +        @Override
    +        public String getPrefix() {
    +            return prefix;
    +        }
    +
    +    }
    +
    +    public class MongoCursorIteration implements
    +    CloseableIteration<Namespace, RyaDAOException> {
    +        private final DBCursor cursor;
    +
    +        public MongoCursorIteration(final DBCursor cursor2) {
    +            this.cursor = cursor2;
    +        }
    +
    +        @Override
    +        public boolean hasNext() throws RyaDAOException {
    +            return cursor.hasNext();
    +        }
    +
    +        @Override
    +        public Namespace next() throws RyaDAOException {
    +            final DBObject ns = cursor.next();
    +            final Map values = ns.toMap();
    +            final String namespace = (String) values.get(NAMESPACE);
    +            final String prefix = (String) values.get(PREFIX);
    +
    +            final Namespace temp =  new NamespaceImplementation(namespace, 
prefix);
    +            return temp;
    +        }
    +
    +        @Override
    +        public void remove() throws RyaDAOException {
    +            next();
    +        }
    +
    +        @Override
    +        public void close() throws RyaDAOException {
    +            cursor.close();
    +        }
    +
    +    }
    +
    +    private static final String ID = "_id";
    +    private static final String PREFIX = "prefix";
    +    private static final String NAMESPACE = "namespace";
    +    private StatefulMongoDBRdfConfiguration conf;
    +    private final DBCollection nsColl;
    +
    +
    +    public SimpleMongoDBNamespaceManager(final DBCollection 
nameSpaceCollection) {
    +        nsColl = nameSpaceCollection;
    +    }
    +
    +    @Override
    +    public void createIndices(final DBCollection coll){
    +        coll.createIndex(PREFIX);
    +        coll.createIndex(NAMESPACE);
    +    }
    +
    +    @Override
    +    public void setConf(final StatefulMongoDBRdfConfiguration conf) {
    +        this.conf = conf;
    +    }
    +
    +    @Override
    +    public StatefulMongoDBRdfConfiguration getConf() {
    +        return conf;
    +    }
    +
    +    @Override
    +    public void addNamespace(final String prefix, final String namespace)
    +            throws RyaDAOException {
    +        final String id = prefix;
    +        byte[] bytes = id.getBytes(StandardCharsets.UTF_8);
    +        try {
    +            final MessageDigest digest = 
MessageDigest.getInstance("SHA-1");
    +            bytes = digest.digest(bytes);
    +        } catch (final NoSuchAlgorithmException e) {
    +            // TODO Auto-generated catch block
    --- End diff --
    
    Done.


> Fix inconsistent method of using MongoClient within a Sail object
> -----------------------------------------------------------------
>
>                 Key: RYA-414
>                 URL: https://issues.apache.org/jira/browse/RYA-414
>             Project: Rya
>          Issue Type: Bug
>            Reporter: Andrew Smith
>            Assignee: Kevin Chilton
>            Priority: Blocker
>
> We've decided to introduce a stateful configuration object that is used to 
> hold onto objects that needs to be shared across components within a Sail 
> object in favor of having a static holder. The static holder limited our 
> ability to use more than a single Sail object within a single JVM because all 
> of those Sail objects would all have to access the same Mongo DB repository.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

Reply via email to