ノートブック・コード・エディター

ノートブック・コード・エディターは、Groovyプログラミング言語のサブセットをサポートしています。

ノートブック・コード・エディターは、Apache Groovy™プログラミング言語のサブセットをサポートしています。

ノートブックは、接続情報に基づいてDSEクラスターに接続します。各ノートブックが持つ接続は1つのみです。接続で指定される1つの情報は、その[Graph Name]です。

コード・エディターには、事前定義された別名変数が用意されています。

graph
グラフを参照する変数。
g
OLTPグラフ探索用のグラフに関連付けられた探索ソース。
a
OLAPグラフ探索用のグラフに関連付けられた探索ソース。

ドロップダウン・リストには、エディター内の空白行に関する内容アシストが表示されます。

コード・エディターは、インライン・コード検証をサポートしています。一部のコードが無効であるか、エディターがサポートしていないGroovy構文を使用すると、無効なコードが赤い下線付きで表示されます。オフにするには、[Disable editor validations]を選択します。

内容アシスタンス

コード・エディターには、内容アシスタンス([Ctrl+Space])が用意されています。

内容アシスタンスは、コンテキストに基づいて内容を提示します。
  • メソッド
  • 変数
[Return]を押して、アシスタンス・リストからハイライト表示された選択肢を選択します。

プルダウン・メニューで行を選択するのに十分な文字を入力すると、提示内容をフィルターできます。

[Shift]タブを使用して、行の先頭に戻ります。

コードの検証

ノートブック・エディターでは3種類の検証をサポートしています。
  • Groovy構文検証—セル内のコードは、DSE Graph内でGroovyとして実行されます。ノートブック・エディターには、Gremlin文を作成するのに十分なGroovy構文のサポート機能が追加されています。

  • 型のチェック検証—セル内のコードは、型についてもチェックされます。間違った型のオブジェクトに対してメソッドを呼び出そうとした場合や、無効な型のパラメーターを渡した場合は、検証エラーが表示されます。

  • ドメイン特有の検証—コード内の一般的なエラーが可能な限り指摘されます。

ノートブック・エディターは、コードがセルに入力されると検証を実行します。セルごとに検証をオフにすることができます。

ノートブックのコード・エディター・セルには、Gremlinセッションのスコープ・コンテキストがないため、セルの順序に基づく暗黙的スコープに依存しています。検証は、ノートブック内の順序で一番上のセルから行われます。コードを順不同で実行すると、コードが正常に実行された場合でも検証エラーが発生する可能性があります。

Groovy言語のサポート

サポートされているもの:

  • Groovyスタイルの変数宣言:
    • def foo
    • def SomeType foo
    • SomeType foo
    • シェル・スタイルの変数
  • メソッド呼び出し
  • 文を完了するためのオプションのセミコロン
  • ジェネリクス
  • 次の両方の形式の文字列:
    • '123'
    • "123"
  • forループ:基本およびfor in構文
  • whileループ
  • try-catch-finally:例外をキャッチするための型が必要です
  • if-else
  • switch
  • 次の両方のスタイルでのキャスト:(SomeType) fooおよびfoo as SomeType
  • リスト・リテラル

サポートされていないGroovy言語

  • クロージャ
  • 多変数割り当てやオブジェクト分解のようなその他の高度な変数割り当て
  • 明示的に無効にされたimport
  • mapリテラル、またはJavaでサポートされていない他の複合型リテラル
  • try-catch-finally:複数キャッチはサポートされていません

ノートブック情報

[Information]を選択すると、以下が表示されます。
  • ノートブックに使用されている接続。
  • ノートブックへの最後の更新。
  • 実行中のStudio JARファイルのバージョン。

ノートブック・スキーマ

[Information]を選択すると、ノートブックの現在のグラフ・スキーマが表示されます。

視覚的なスキーマ表示に加えて、コード・アシスト機能によってスキーマ・アシストの提示も行われます。

多数提示されます。分析してみると以下のようになります。
  • エディターは、これが頂点ベースの探索(型推論のため)であることを把握できるほどインテリジェントであり、頂点のプロパティやキーに関連するスキーマのみを提示します。
  • 複数のhasメソッドがあるため、Studioはこれらのバリエーションすべての可能性を提示します。
  • エディターは、可能なプロパティ・キーのそれぞれについて、具体的に提示します。