Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Copyright 2010-2014 Orient Technologies LTD (info--at--orientechnologies.com)
   *
   * 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 com.orientechnologies.orient.graph.console;
 
 
 import java.util.List;
 import java.util.Map;

Gremlin specialized console.

Author(s):
Luca Garulli (l.garulli--at--orientechnologies.com)
 
 public class OGremlinConsole extends OConsoleDatabaseApp {
 
   public OGremlinConsole(final String[] args) {
     super(args);
   }
 
   public static void main(final String[] args) {
     int result;
     try {
       boolean tty = false;
       try {
         if (setTerminalToCBreak())
           tty = true;
 
       } catch (Exception e) {
       }
 
       final OConsoleDatabaseApp console = new OGremlinConsole(args);
       if (tty)
         console.setReader(new TTYConsoleReader());
 
       result = console.run();
 
     } finally {
       try {
         stty("echo");
       } catch (Exception e) {
       }
     }
     System.exit(result);
   }
 
   @ConsoleCommand(splitInWords = false, description = "Execute a GREMLIN script")
   public void gremlin(@ConsoleParameter(name = "script-text", description = "The script text to execute"final String iScriptText) {
     checkForDatabase();
 
     if (iScriptText == null || iScriptText.length() == 0)
       return;
 
 
     long start = System.currentTimeMillis();
     try {
       final Object result = .command(new OCommandGremlin(iScriptText)).execute();
 
       float elapsedSeconds = (System.currentTimeMillis() - start) / 1000;
 
       .println("\n" + result);
 
       .printf("\nScript executed in %f sec(s)."elapsedSeconds);
     } catch (OStorageException e) {
       final Throwable cause = e.getCause();
       if (cause instanceof OCommandExecutorNotFoundException)
         .printf("\nError: the GREMLIN command executor is not installed, check your configuration");
     }
   }
 
   @Override
   @ConsoleCommand(description = "Import a database into the current one", splitInWords = false)
  public void importDatabase(@ConsoleParameter(name = "options", description = "Import options"String textthrows IOException {
    final List<Stringitems = OStringSerializerHelper.smartSplit(text' ');
    final String fileName = items.size() <= 0 || (items.get(1)).charAt(0) == '-' ? null : items.get(1);
    final String options = fileName != null ? text.substring((items.get(0)).length() + (items.get(1)).length() + 1).trim() : text;
    if (fileName != null && fileName.endsWith(".graphml")) {
      message("\nImporting GRAPHML database from " + text + "...");
      try {
        final Map<StringList<String>> opts = parseOptions(options);
        g.setUseLog(false);
        g.setWarnOnForceClosingTx(false);
        new OGraphMLReader(g).setOptions(opts).inputGraph(gfileName);
        g.commit();
        commit();
      } catch (ODatabaseImportException e) {
        printError(e);
      }
    } else
      super.importDatabase(text);
  }
  @ConsoleCommand(description = "Migrates graph from OMVRBTree to ORidBag")
  public void upgradeGraph() {
    OGraphMigration migration = new OGraphMigration(getCurrentDatabase(), this);
    migration.execute();
    message("Graph has been upgraded.");
  }
  protected void onBefore() {
    super.onBefore();
    .println("\nInstalling extensions for GREMLIN language v." + OGremlinHelper.getEngineVersion());
    OGremlinHelper.global().create();
  }
  protected boolean isCollectingCommands(final String iLine) {
    return super.isCollectingCommands(iLine) || iLine.startsWith("gremlin");
  }
New to GrepCode? Check out our FAQ X