Package oracle.pgx.config
Class GraphConfig
- java.lang.Object
-
- oracle.pgx.config.AbstractConfig
-
- oracle.pgx.config.GraphConfig
-
- All Implemented Interfaces:
CommonLoadableConfig<Format>,oracle.pgx.config.internal.ConvertibleToGraphConfigBuilder
- Direct Known Subclasses:
AbstractFileGraphConfig,AbstractPartitionedGraphConfig,AbstractPgGraphConfig,AbstractRdfGraphConfig,AbstractTwoTablesRdbmsGraphConfig
public abstract class GraphConfig extends AbstractConfig implements CommonLoadableConfig<Format>, oracle.pgx.config.internal.ConvertibleToGraphConfigBuilder
abstract super-class for all graph configs
-
-
Field Summary
-
Fields inherited from class oracle.pgx.config.AbstractConfig
ENV_SEPARATOR, ENV_VARIABLE_PREFIX, SYSTEM_PROPERTY_PREFIX
-
-
Constructor Summary
Constructors Constructor Description GraphConfig()
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description booleanequals(java.lang.Object o)abstract java.lang.DoublegetArrayCompactionThreshold()For graphs optimized for updates, the value corresponds to the ratio at which the delta-logs are compacted into new arrays.IdTypegetEdgeIdType()Get the edge ID type of this graph configurationjava.lang.ObjectgetEdgePropertyDefault(int i)Get the default value of a edge property by indexintgetEdgePropertyDimension(int i)Get the dimension of a edge property by indexjava.lang.StringgetEdgePropertyName(int i)Get the name of a edge property by indexPropertyTypegetEdgePropertyType(int i)Get the name of a edge property by indexjava.util.Map<java.lang.String,PropertyType>getEdgePropertyTypes()abstract java.util.List<GraphPropertyConfig>getEdgeProps()Get the vertex properties of this graph configurationabstract java.util.List<ExternalStoreConfig>getExternalStores()GraphLoadingConfiggetLoadingOptions()Get the loading configuration of this graph configurationIdTypegetNodeKeyType()alias forgetVertexIdType()java.lang.ObjectgetNodePropertyDefault(int i)Get the default value of a vertex property by indexintgetNodePropertyDimension(int i)Get the dimension of a node property by indexjava.lang.StringgetNodePropertyName(int i)Get the name of a vertex property by indexPropertyTypegetNodePropertyType(int i)Get the type of a vertex property by indexabstract GraphOptimizedForgetOptimizedFor()Indicates if the graph should be partitioned during loadingabstract PartitionWhileLoadinggetPartitionWhileLoading()Indicates if the graph should be heterogenized during loadingIdStrategygetValidatedEdgeIdStrategy()Validates and return the ID strategy used for edges (checking if the strategy is compatible with the rest of the graph configuration)IdTypegetValidatedEdgeIdType()Validates and return the ID type used for edges (checking if the type is compatible with the rest of the configuration)IdStrategygetValidatedVertexIdStrategy()Validates and return the ID strategy used for vertices (checking if the strategy is compatible with the rest of the graph configuration)IdTypegetValidatedVertexIdType()Validates and return the ID type used for vertices (checking if the type is compatible with the rest of the configuration)abstract IdTypegetVertexIdType()Get the vertex ID type of this graph configurationjava.util.Map<java.lang.String,PropertyType>getVertexPropertyTypes()abstract java.util.List<GraphPropertyConfig>getVertexProps()Get the vertex properties of this graph configurationinthashCode()booleanhasVerticesAndEdgesSeparatedFileFormat()Check if this graph configuration has vertices and edges separated in different filesstatic booleanhasVerticesAndEdgesSeparatedFileFormat(Format format)Check if a format has vertices and edges separated in different filesbooleanisEdgeLabelLoadingEnabled()booleanisFileFormat()Check if this graph configuration is a file-based configuration.static booleanisFileFormat(Format format)Check if a format is a file-based formatbooleanisLoadEdgeKeys()booleanisLoadVertexKeys()booleanisMultipleFileFormat()Check if this graph configuration has vertices and edges separated in different filesstatic booleanisMultipleFileFormat(Format format)Check if a format has vertices and edges separated in different filesbooleanisSingleFileFormat()Check if this graph configuration has vertices and edges combined in same filestatic booleanisSingleFileFormat(Format format)Check if a format has vertices and edges combined in same filebooleanisVertexLabelsLoadingEnabled()intnumEdgeProperties()Get the number of edge properties in this graph configurationintnumNodeProperties()Get the number of vertex properties in this graph configurationbooleanskipEdgeLoading()booleanskipVertexLoading()booleansupportsEdgeLabel()Check if this graph configuration's format supports having an edge label or notstatic booleansupportsEdgeLabel(Format format)Check if a format supports having an edge label or notbooleansupportsPropertyColumn()Check if this graph configuration's format supports having a column indication for propertiesstatic booleansupportsPropertyColumn(Format format)Check if a format support having a column indication for propertiesbooleansupportsVectorProperties()Check if this graph configuration's format supports having vector properties or notstatic booleansupportsVectorProperties(Format format)Check if a format support having vector properties or notbooleansupportsVertexLabels()Check if this graph configuration's format supports having an vertex labels or notstatic booleansupportsVertexLabels(Format format)Check if a format support having an vertex labels or not-
Methods inherited from class oracle.pgx.config.AbstractConfig
getDefault, getValueFromEnvironment, getValueFromEnvironment, getValues, parseString, setSerializable
-
Methods inherited from class java.lang.Object
getClass, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface oracle.pgx.config.CommonLoadableConfig
createLocalDateFormat, createTimeFormat, createTimestampFormat, createTimestampWithTimezoneFormat, createTimeWithTimezoneFormat, getAttributes, getErrorHandling, getFormat, getKeystoreAlias, getLocalDateFormat, getName, getTimeFormat, getTimestampFormat, getTimestampWithTimezoneFormat, getTimeWithTimezoneFormat, getVectorComponentDelimiter
-
-
-
-
Method Detail
-
isFileFormat
public static boolean isFileFormat(Format format)
Check if a format is a file-based format- Parameters:
format- the format to check- Returns:
trueif given format is a file-based format,falseotherwise
-
hasVerticesAndEdgesSeparatedFileFormat
public static boolean hasVerticesAndEdgesSeparatedFileFormat(Format format)
Check if a format has vertices and edges separated in different files- Parameters:
format- the format to check- Returns:
trueif given format has vertices and edges separated in different files,falseotherwise
-
isSingleFileFormat
public static boolean isSingleFileFormat(Format format)
Check if a format has vertices and edges combined in same file- Parameters:
format- the format to check- Returns:
trueif given format has vertices and edges combined in same file,falseotherwise
-
isMultipleFileFormat
public static boolean isMultipleFileFormat(Format format)
Check if a format has vertices and edges separated in different files- Parameters:
format- the format to check- Returns:
trueif given format has vertices and edges separated in different files,falseotherwise
-
supportsEdgeLabel
public static boolean supportsEdgeLabel(Format format)
Check if a format supports having an edge label or not- Parameters:
format- the format to check- Returns:
trueif given format supports edge label,falseotherwise
-
supportsVertexLabels
public static boolean supportsVertexLabels(Format format)
Check if a format support having an vertex labels or not- Parameters:
format- the format to check- Returns:
trueif given format supports vertex labels,falseotherwise
-
supportsVectorProperties
public static boolean supportsVectorProperties(Format format)
Check if a format support having vector properties or not- Parameters:
format- the format to check- Returns:
trueif given format supports vector properties,falseotherwise
-
supportsPropertyColumn
public static boolean supportsPropertyColumn(Format format)
Check if a format support having a column indication for properties- Parameters:
format- the format to check- Returns:
trueif given format supports property columns,falseotherwise
-
getOptimizedFor
public abstract GraphOptimizedFor getOptimizedFor()
Indicates if the graph should be partitioned during loading- Returns:
by_labelif the graph should be partitioned during loading,falseIndicates if the graph should use data-structures optimized for fast updates
-
getPartitionWhileLoading
public abstract PartitionWhileLoading getPartitionWhileLoading()
Indicates if the graph should be heterogenized during loading- Returns:
trueif the graph should be heterogenized during loading,falseornullotherwise
-
getVertexProps
public abstract java.util.List<GraphPropertyConfig> getVertexProps()
Get the vertex properties of this graph configuration- Returns:
- the list of vertex properties
-
getEdgeProps
public abstract java.util.List<GraphPropertyConfig> getEdgeProps()
Get the vertex properties of this graph configuration- Returns:
- the list of vertex properties
-
getValidatedVertexIdStrategy
public IdStrategy getValidatedVertexIdStrategy()
Validates and return the ID strategy used for vertices (checking if the strategy is compatible with the rest of the graph configuration)- Returns:
- the ID strategy that can be used for the vertices of the graph
-
getVertexIdType
public abstract IdType getVertexIdType()
Get the vertex ID type of this graph configuration- Returns:
- the vertex ID type
-
getValidatedVertexIdType
public IdType getValidatedVertexIdType()
Validates and return the ID type used for vertices (checking if the type is compatible with the rest of the configuration)- Returns:
- the ID type that can be used for the vertices of the graph
-
getLoadingOptions
public GraphLoadingConfig getLoadingOptions()
Get the loading configuration of this graph configuration- Returns:
- the loading configuration
-
getExternalStores
public abstract java.util.List<ExternalStoreConfig> getExternalStores()
-
getArrayCompactionThreshold
public abstract java.lang.Double getArrayCompactionThreshold()
For graphs optimized for updates, the value corresponds to the ratio at which the delta-logs are compacted into new arrays.- Returns:
- the compaction threshold
-
getValidatedEdgeIdStrategy
public IdStrategy getValidatedEdgeIdStrategy()
Validates and return the ID strategy used for edges (checking if the strategy is compatible with the rest of the graph configuration)- Returns:
- the ID strategy that can be used for the edges of the graph
-
getEdgeIdType
public IdType getEdgeIdType()
Get the edge ID type of this graph configuration- Returns:
- the edge ID type
-
getValidatedEdgeIdType
public IdType getValidatedEdgeIdType()
Validates and return the ID type used for edges (checking if the type is compatible with the rest of the configuration)- Returns:
- the ID type that can be used for the edges of the graph
-
isFileFormat
public boolean isFileFormat()
Check if this graph configuration is a file-based configuration.- Returns:
trueif this graph configuration has a file-based format,falseotherwise
-
hasVerticesAndEdgesSeparatedFileFormat
public boolean hasVerticesAndEdgesSeparatedFileFormat()
Check if this graph configuration has vertices and edges separated in different files- Returns:
trueif this graph configuration's format has vertices and edges separated in different files,falseotherwise
-
isSingleFileFormat
public boolean isSingleFileFormat()
Check if this graph configuration has vertices and edges combined in same file- Returns:
trueif this graph configuration's format has vertices and edges combined in same file,falseotherwise
-
isMultipleFileFormat
public boolean isMultipleFileFormat()
Check if this graph configuration has vertices and edges separated in different files- Returns:
trueif this graph configuration's format has vertices and edges separated in different files,falseotherwise
-
supportsEdgeLabel
public boolean supportsEdgeLabel()
Check if this graph configuration's format supports having an edge label or not- Returns:
trueif this graph configuration's format supports edge label,falseotherwise
-
supportsVertexLabels
public boolean supportsVertexLabels()
Check if this graph configuration's format supports having an vertex labels or not- Returns:
trueif this graph configuration's format supports vertex labels,falseotherwise
-
supportsVectorProperties
public boolean supportsVectorProperties()
Check if this graph configuration's format supports having vector properties or not- Returns:
trueif this graph configuration's format supports vector proeprties,falseotherwise
-
supportsPropertyColumn
public boolean supportsPropertyColumn()
Check if this graph configuration's format supports having a column indication for properties- Returns:
trueif this graph configuration's format supports property columns,falseotherwise
-
getNodeKeyType
public IdType getNodeKeyType()
alias forgetVertexIdType()- Returns:
- the vertex ID type of this graph configuration
-
numNodeProperties
public int numNodeProperties()
Get the number of vertex properties in this graph configuration- Returns:
- the number of vertex properties
-
numEdgeProperties
public int numEdgeProperties()
Get the number of edge properties in this graph configuration- Returns:
- the number of edge properties
-
getNodePropertyName
public java.lang.String getNodePropertyName(int i)
Get the name of a vertex property by index- Parameters:
i- the 0-based index of the vertex property- Returns:
- the name of the vertex property
-
getEdgePropertyName
public java.lang.String getEdgePropertyName(int i)
Get the name of a edge property by index- Parameters:
i- the 0-based index of the edge property- Returns:
- the name of the edge property
-
getNodePropertyType
public PropertyType getNodePropertyType(int i)
Get the type of a vertex property by index- Parameters:
i- the 0-based index of the vertex property- Returns:
- the type of the vertex property
-
getEdgePropertyType
public PropertyType getEdgePropertyType(int i)
Get the name of a edge property by index- Parameters:
i- the 0-based index of the edge property- Returns:
- the name of the edge property
-
getNodePropertyDimension
public int getNodePropertyDimension(int i)
Get the dimension of a node property by index- Parameters:
i- the 0-based index of the node property- Returns:
- the dimension of the node property
-
getEdgePropertyDimension
public int getEdgePropertyDimension(int i)
Get the dimension of a edge property by index- Parameters:
i- the 0-based index of the edge property- Returns:
- the dimension of the edge property
-
getNodePropertyDefault
public java.lang.Object getNodePropertyDefault(int i)
Get the default value of a vertex property by index- Parameters:
i- the 0-based index of the vertex property- Returns:
- the default value of the vertex property
-
getEdgePropertyDefault
public java.lang.Object getEdgePropertyDefault(int i)
Get the default value of a edge property by index- Parameters:
i- the 0-based index of the edge property- Returns:
- the default value of the edge property
-
isLoadEdgeKeys
public boolean isLoadEdgeKeys()
-
isLoadVertexKeys
public boolean isLoadVertexKeys()
-
isVertexLabelsLoadingEnabled
public boolean isVertexLabelsLoadingEnabled()
-
isEdgeLabelLoadingEnabled
public boolean isEdgeLabelLoadingEnabled()
-
skipVertexLoading
public boolean skipVertexLoading()
-
skipEdgeLoading
public boolean skipEdgeLoading()
-
equals
public boolean equals(java.lang.Object o)
- Overrides:
equalsin classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCodein classjava.lang.Object
-
getVertexPropertyTypes
public java.util.Map<java.lang.String,PropertyType> getVertexPropertyTypes()
- Returns:
- a mapping from vertex property name to property type
-
getEdgePropertyTypes
public java.util.Map<java.lang.String,PropertyType> getEdgePropertyTypes()
- Returns:
- a mapping from edge property name to property type
-
-