public class HasResourceProperty extends Object
has property on an Thing.
This property can be queried, inserted or deleted.
The property is defined as a relationship between an Thing and a Resource, where the
Resource is of a particular type.
When matching, shortcut edges are used to speed up the traversal. The type of the relationship does not matter.
When inserting, an implicit relation is created between the instance and the resource, using type labels derived from
the label of the resource type.| Modifier and Type | Method and Description |
|---|---|
default void |
buildString(StringBuilder builder)
Build a Graql string representation of this property
|
void |
checkValid(GraknGraph graph,
VarPatternAdmin var)
Check if the given property can be used in a match query
|
void |
delete(GraknGraph graph,
Concept concept)
Delete the given property from the graph, if possible.
|
boolean |
equals(Object o) |
java.util.stream.Stream<VarPatternAdmin> |
getImplicitInnerVars()
Get a stream of any inner
VarPatternAdmin within this `VarProperty`, including any that may have been
implicitly created (such as with "has"). |
java.util.stream.Stream<VarPatternAdmin> |
getInnerVars()
Get a stream of any inner
VarPatternAdmin within this `VarProperty`. |
String |
getName() |
String |
getProperty() |
VarPatternAdmin |
getResource() |
Label |
getType() |
java.util.stream.Stream<VarPatternAdmin> |
getTypes()
Get a stream of
VarPatternAdmin that must be types. |
int |
hashCode() |
void |
insert(InsertQueryExecutor insertQueryExecutor,
Concept concept)
Insert the given property into the graph, if possible.
|
Atomic |
mapToAtom(VarPatternAdmin var,
Set<VarPatternAdmin> vars,
ReasonerQuery parent)
maps this var property to a reasoner atom
|
Collection<EquivalentFragmentSet> |
match(Var start)
Return a collection of
EquivalentFragmentSet to match the given property in the graph |
static HasResourceProperty |
of(Label resourceType,
VarPatternAdmin resource) |
HasResourceProperty |
setResource(VarPatternAdmin resource) |
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, waitcheckInsertable, checkValidgetImplicitInnerVars, graqlString, isUniquepublic static HasResourceProperty of(Label resourceType, VarPatternAdmin resource)
public Label getType()
public VarPatternAdmin getResource()
@CheckReturnValue public HasResourceProperty setResource(VarPatternAdmin resource)
public String getName()
public String getProperty()
public Collection<EquivalentFragmentSet> match(Var start)
VarPropertyInternalEquivalentFragmentSet to match the given property in the graphmatch in interface VarPropertyInternalpublic java.util.stream.Stream<VarPatternAdmin> getInnerVars()
VarPropertyVarPatternAdmin within this `VarProperty`.getInnerVars in interface VarPropertygetInnerVars in interface VarPropertyInternalpublic void insert(InsertQueryExecutor insertQueryExecutor, Concept concept) throws GraqlQueryException
VarPropertyInternalinsert in interface VarPropertyInternalinsertQueryExecutor - the instance handling the insert queryconcept - the concept to insert a property onGraqlQueryExceptionpublic void delete(GraknGraph graph, Concept concept)
VarPropertyInternaldelete in interface VarPropertyInternalgraph - the graph to operate onconcept - the concept to delete properties ofpublic java.util.stream.Stream<VarPatternAdmin> getTypes()
VarPropertyVarPatternAdmin that must be types.getTypes in interface VarPropertypublic Atomic mapToAtom(VarPatternAdmin var, Set<VarPatternAdmin> vars, ReasonerQuery parent)
VarPropertymapToAtom in interface VarPropertyvar - VarPatternAdmin this property belongs tovars - VarAdmins constituting the pattern this property belongs toparent - reasoner query this atom should belong topublic void buildString(StringBuilder builder)
VarPropertybuildString in interface VarPropertybuilder - a string builder to append topublic final void checkValid(GraknGraph graph, VarPatternAdmin var) throws GraqlQueryException
VarPropertyInternalcheckValid in interface VarPropertyInternalGraqlQueryExceptionpublic java.util.stream.Stream<VarPatternAdmin> getImplicitInnerVars()
VarPropertyVarPatternAdmin within this `VarProperty`, including any that may have been
implicitly created (such as with "has").getImplicitInnerVars in interface VarPropertyCopyright © 2017 Grakn Labs Ltd. All rights reserved.