28
28
29
29
/**
30
30
* Interface for operations on ArangoDB graph level.
31
- *
31
+ *
32
32
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/">API Documentation</a>
33
33
* @author Mark Vollmary
34
34
*/
35
35
public interface ArangoGraph extends ArangoSerializationAccessor {
36
36
37
37
/**
38
38
* The the handler of the database the named graph is within
39
- *
39
+ *
40
40
* @return database handler
41
41
*/
42
42
public ArangoDatabase db ();
43
43
44
44
/**
45
45
* The name of the collection
46
- *
46
+ *
47
47
* @return collection name
48
48
*/
49
49
public String name ();
50
50
51
51
/**
52
52
* Checks whether the graph exists
53
- *
53
+ *
54
54
* @return true if the graph exists, otherwise false
55
55
*/
56
56
boolean exists () throws ArangoDBException ;
57
57
58
58
/**
59
59
* Creates the graph in the graph module. The creation of a graph requires the name of the graph and a definition of
60
60
* its edges.
61
- *
61
+ *
62
62
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#create-a-graph">API
63
63
* Documentation</a>
64
64
* @param edgeDefinitions
@@ -71,7 +71,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
71
71
/**
72
72
* Creates the graph in the graph module. The creation of a graph requires the name of the graph and a definition of
73
73
* its edges.
74
- *
74
+ *
75
75
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#create-a-graph">API
76
76
* Documentation</a>
77
77
* @param edgeDefinitions
@@ -85,15 +85,28 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
85
85
86
86
/**
87
87
* Deletes the graph from the database.
88
- *
88
+ *
89
89
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#drop-a-graph">API Documentation</a>
90
90
* @throws ArangoDBException
91
91
*/
92
92
void drop () throws ArangoDBException ;
93
93
94
+ /**
95
+ * Deletes the graph from the database.
96
+ *
97
+ * @see <a href=
98
+ * "https://docs.arangodb.com/current/HTTP/Gharial/Management.html#drop-a-graph">API
99
+ * Documentation</a>
100
+ * @param dropCollections
101
+ * Drop collections of this graph as well. Collections will only be
102
+ * dropped if they are not used in other graphs.
103
+ * @throws ArangoDBException
104
+ */
105
+ void drop (boolean dropCollections ) throws ArangoDBException ;
106
+
94
107
/**
95
108
* Retrieves general information about the graph.
96
- *
109
+ *
97
110
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#get-a-graph">API Documentation</a>
98
111
* @return the definition content of this graph
99
112
* @throws ArangoDBException
@@ -102,7 +115,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
102
115
103
116
/**
104
117
* Fetches all vertex collections from the graph and returns a list of collection names.
105
- *
118
+ *
106
119
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#list-vertex-collections">API
107
120
* Documentation</a>
108
121
* @return all vertex collections within this graph
@@ -113,7 +126,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
113
126
/**
114
127
* Adds a vertex collection to the set of collections of the graph. If the collection does not exist, it will be
115
128
* created.
116
- *
129
+ *
117
130
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#add-vertex-collection">API
118
131
* Documentation</a>
119
132
* @param name
@@ -125,7 +138,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
125
138
126
139
/**
127
140
* Returns a {@code ArangoVertexCollection} instance for the given vertex collection name.
128
- *
141
+ *
129
142
* @param name
130
143
* Name of the vertex collection
131
144
* @return collection handler
@@ -134,7 +147,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
134
147
135
148
/**
136
149
* Returns a {@code ArangoEdgeCollection} instance for the given edge collection name.
137
- *
150
+ *
138
151
* @param name
139
152
* Name of the edge collection
140
153
* @return collection handler
@@ -143,7 +156,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
143
156
144
157
/**
145
158
* Fetches all edge collections from the graph and returns a list of collection names.
146
- *
159
+ *
147
160
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#list-edge-definitions">API
148
161
* Documentation</a>
149
162
* @return all edge collections within this graph
@@ -153,7 +166,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
153
166
154
167
/**
155
168
* Adds the given edge definition to the graph.
156
- *
169
+ *
157
170
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#add-edge-definition">API
158
171
* Documentation</a>
159
172
* @param definition
@@ -166,7 +179,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
166
179
/**
167
180
* Change one specific edge definition. This will modify all occurrences of this definition in all graphs known to
168
181
* your database
169
- *
182
+ *
170
183
* @see <a href="https://docs.arangodb.com/current/HTTP/Gharial/Management.html#replace-an-edge-definition">API
171
184
* Documentation</a>
172
185
* @param definition
@@ -179,7 +192,7 @@ public interface ArangoGraph extends ArangoSerializationAccessor {
179
192
/**
180
193
* Remove one edge definition from the graph. This will only remove the edge collection, the vertex collections
181
194
* remain untouched and can still be used in your queries
182
- *
195
+ *
183
196
* @see <a href=
184
197
* "https://docs.arangodb.com/current/HTTP/Gharial/Management.html#remove-an-edge-definition-from-the-graph">API
185
198
* Documentation</a>
0 commit comments