com.thinkaurelius.titan.core.schema

## Interface DefaultSchemaMaker

- All Known Implementing Classes:
    BlueprintsDefaultSchemaMaker, DisableDefaultSchemaMaker

      public interface DefaultSchemaMaker

  When a graph is configured to automatically create vertex/edge labels and property keys when they are first used, a DefaultTypeMaker implementation is used to define them by invoking the `makeVertexLabel(VertexLabelMaker)`, `makeEdgeLabel(EdgeLabelMaker)`, or `makePropertyKey(PropertyKeyMaker)` methods respectively.
  By providing a custom DefaultTypeMaker implementation, one can specify how these types should be defined by default. A DefaultTypeMaker implementation is specified in the graph configuration using the full path which means the implementation must be on the classpath.
  Author:
    Matthias Bröcheler (http://www.matthiasb.com)
  See Also:
    `RelationTypeMaker`

- - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `boolean` | `ignoreUndefinedQueryTypes()` Whether to ignore undefined types occurring in a query.
    `EdgeLabel` | `makeEdgeLabel(EdgeLabelMaker factory)` Creates a new edge label with default settings against the provided `EdgeLabelMaker`.
    `PropertyKey` | `makePropertyKey(PropertyKeyMaker factory)` Creates a new property key with default settings against the provided `PropertyKeyMaker`.
    `VertexLabel` | `makeVertexLabel(VertexLabelMaker factory)` Creates a new vertex label with the default settings against the provided `VertexLabelMaker`.

- - ### Method Detail

    - #### makeEdgeLabel

          EdgeLabel makeEdgeLabel(EdgeLabelMaker factory)

      Creates a new edge label with default settings against the provided `EdgeLabelMaker`.
      Parameters:
        `factory` - EdgeLabelMaker through which the edge label is created
      Returns:
        A new edge label
      Throws:
        `IllegalArgumentException` - if the name is already in use or if other configured values are invalid.

    - #### makePropertyKey

          PropertyKey makePropertyKey(PropertyKeyMaker factory)

      Creates a new property key with default settings against the provided `PropertyKeyMaker`.
      Parameters:
        `factory` - PropertyKeyMaker through which the property key is created
      Returns:
        A new property key
      Throws:
        `IllegalArgumentException` - if the name is already in use or if other configured values are invalid.

    - #### makeVertexLabel

          VertexLabel makeVertexLabel(VertexLabelMaker factory)

      Creates a new vertex label with the default settings against the provided `VertexLabelMaker`.
      Parameters:
        `factory` - VertexLabelMaker through which the vertex label is created
      Returns:
        A new vertex label
      Throws:
        `IllegalArgumentException` - if the name is already in use or if other configured values are invalid.

    - #### ignoreUndefinedQueryTypes

          boolean ignoreUndefinedQueryTypes()

      Whether to ignore undefined types occurring in a query.

      If this method returns true, then undefined types referred to in a `TitanVertexQuery` will be silently ignored and an empty result set will be returned. If this method returns false, then usage of undefined types in queries results in an `IllegalArgumentException`.

Copyright © 2012–2014. All rights reserved.