@@ -23,17 +23,7 @@ var Tripod = function(dbName,collectionName) {
23
23
Tripod . prototype . describe = function ( r , c , callback ) {
24
24
c = ( c == null ) ? this . _config . get ( "defaultContext" ) : c ;
25
25
// todo: alias c and r
26
- this . _getCollection ( function ( err , collection ) {
27
- collection . findOne ( { _id :{ "r" :r , "c" :c } } , function ( err , doc ) {
28
- if ( err ) {
29
- callback ( err , null ) ;
30
- } else {
31
- var graph = new TripleGraph ( ) ;
32
- graph . addTripodDoc ( doc ) ;
33
- callback ( null , graph ) ;
34
- }
35
- } )
36
- } )
26
+ this . graph ( { _id :{ "r" :r , "c" :c } } , callback ) ;
37
27
} ;
38
28
39
29
/**
@@ -42,20 +32,7 @@ Tripod.prototype.describe = function(r,c,callback) {
42
32
* @param callback
43
33
*/
44
34
Tripod . prototype . multiDescribe = function ( ids , callback ) {
45
- var query = { _id : { '$in' :ids } } ;
46
- this . _getCollection ( function ( err , collection ) {
47
- collection . find ( query ) . toArray ( function ( err , docs ) {
48
- if ( err ) {
49
- callback ( err , null ) ;
50
- } else {
51
- var graph = new TripleGraph ( ) ;
52
- docs . forEach ( function ( doc ) {
53
- graph . addTripodDoc ( doc ) ;
54
- } ) ;
55
- callback ( null , graph ) ;
56
- }
57
- } )
58
- } )
35
+ this . graph ( { _id : { '$in' :ids } } , callback ) ;
59
36
} ;
60
37
61
38
/**
@@ -80,6 +57,27 @@ Tripod.prototype.getViewForResource = function (v,r,c,callback) {
80
57
} ) ;
81
58
} ;
82
59
60
+ /**
61
+ * Fetch a graph based on a query
62
+ * @param query
63
+ * @param callback
64
+ */
65
+ Tripod . prototype . graph = function ( query , callback ) {
66
+ this . _getCollection ( function ( err , collection ) {
67
+ collection . find ( query ) . toArray ( function ( err , docs ) {
68
+ if ( err ) {
69
+ callback ( err , null ) ;
70
+ } else {
71
+ var graph = new TripleGraph ( ) ;
72
+ docs . forEach ( function ( doc ) {
73
+ graph . addTripodDoc ( doc ) ;
74
+ } ) ;
75
+ callback ( null , graph ) ;
76
+ }
77
+ } )
78
+ } )
79
+ }
80
+
83
81
/**
84
82
* Get a graph containing the views of type v for the resources represented in the Array ids
85
83
* @param v - view type
0 commit comments