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

ASF GitHub Bot commented on TINKERPOP-1438:
-------------------------------------------

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

    https://github.com/apache/tinkerpop/pull/569#discussion_r108759155
  
    --- Diff: 
gremlin-server/src/main/java/org/apache/tinkerpop/gremlin/server/GraphManager.java
 ---
    @@ -21,139 +21,101 @@
     import org.apache.tinkerpop.gremlin.process.traversal.TraversalSource;
     import org.apache.tinkerpop.gremlin.structure.Graph;
     import org.apache.tinkerpop.gremlin.structure.Transaction;
    -import org.apache.tinkerpop.gremlin.structure.util.GraphFactory;
    -import org.apache.tinkerpop.gremlin.util.iterator.IteratorUtils;
    -import org.slf4j.Logger;
    -import org.slf4j.LoggerFactory;
     
     import javax.script.Bindings;
    -import javax.script.SimpleBindings;
    -import java.util.HashSet;
     import java.util.Map;
     import java.util.Set;
    -import java.util.concurrent.ConcurrentHashMap;
    -import java.util.function.Predicate;
    -
    -/**
    - * Holder for {@link Graph} and {@link TraversalSource} instances 
configured for the server to be passed to script
    - * engine bindings. The {@link Graph} instances are read from the {@link 
Settings} for Gremlin Server as defined in
    - * the configuration file. The {@link TraversalSource} instances are 
rebound to the {@code GraphManager} once
    - * initialization scripts construct them.
    - */
    -public final class GraphManager {
    -    private static final Logger logger = 
LoggerFactory.getLogger(GremlinServer.class);
    -
    -    private final Map<String, Graph> graphs = new ConcurrentHashMap<>();
    -    private final Map<String, TraversalSource> traversalSources = new 
ConcurrentHashMap<>();
    +import java.util.function.Function;
     
    +public interface GraphManager {
    --- End diff --
    
    Since we don't really have any dev docs for how to implement a 
`GraphManager` could you please add some javadoc here to describe what this 
interface is for and why someone would implement it?


> Consider GraphManager as an interface
> -------------------------------------
>
>                 Key: TINKERPOP-1438
>                 URL: https://issues.apache.org/jira/browse/TINKERPOP-1438
>             Project: TinkerPop
>          Issue Type: Improvement
>          Components: server
>    Affects Versions: 3.2.2
>            Reporter: stephen mallette
>            Priority: Minor
>              Labels: breaking
>
> If {{GraphManager}} were an interface it would make embedding Gremlin Server 
> easier as {{Graph}} instances could be more easily supplied by the host 
> application. In doing this, It also might be good to force a 
> {{TraversalSource}} to be referred to by both the {{Graph}} name and  
> {{TraversalSource}} name.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

Reply via email to