@@ -22,41 +22,38 @@ function ping() {
22
22
return true ;
23
23
}
24
24
25
+
26
+
25
27
function stopAll () {
26
28
$ servers = $ this ->get ("servers " );
27
29
foreach ($ servers ["servers " ] as $ server ) {
28
- $ this ->stopServer ($ server ["id " ]);
30
+ $ this ->stopId ($ server ["id " ]);
29
31
}
30
32
}
31
33
32
- function hasStandalone () {
33
- try {
34
- $ data = $ this ->get ("servers/STANDALONE " );
35
- } catch (\Exception $ e ) {
36
- return false ;
37
- }
38
- return $ data ["mongodb_uri " ];
39
- }
40
34
41
- function startStandalone () {
42
- $ retval = $ this ->post ("servers " , ["name " => "mongod " , "id " => "STANDALONE " ]);
43
- if ($ retval ["procInfo " ]["alive " ]) {
44
- return $ retval ["mongodb_uri " ];
35
+
36
+ function start ($ preset ) {
37
+ $ relative = __DIR__ . "/../../ " ;
38
+ $ file = "scripts/presets/ $ preset " ;
39
+ if (!file_exists ($ relative .$ file )) {
40
+ throw new \Exception ("Cannot file $ file in $ relative " );
45
41
}
46
42
47
- return false ;
43
+ $ retval = $ this ->post ("servers " , ["preset " => "/phongo/ $ file " ]);
44
+ return $ this ->_returnURIIfAlive ($ retval );
48
45
}
49
46
50
- function stopStandalone () {
51
- return $ this ->stopServer ("STANDALONE " );
47
+ function getURI ($ preset ) {
48
+ $ relative = __DIR__ . "/../../ " ;
49
+ $ file = "scripts/presets/ $ preset " ;
50
+ $ content = file_get_contents ($ relative .$ file );
51
+ $ id = json_decode ($ content , true )["id " ];
52
+ return $ this ->_returnURIIfOK ($ id );
52
53
}
53
54
54
- function getServerInfo ($ id ) {
55
- $ data = $ this ->get ("servers/ " . $ id );
56
- return $ data ;
57
- }
58
55
59
- function stopServer ($ id ) {
56
+ function stopId ($ id ) {
60
57
try {
61
58
$ retval = $ this ->delete ("servers/ $ id " );
62
59
return true ;
@@ -68,10 +65,13 @@ function stopServer($id) {
68
65
return false ;
69
66
}
70
67
}
68
+
71
69
function getTimeout () {
72
70
return $ this ->conf ["timeout " ];
73
71
}
74
72
73
+
74
+
75
75
function delete ($ target ) {
76
76
$ opts = [
77
77
"http " => [
@@ -119,6 +119,29 @@ function post($target, $array) {
119
119
return $ this ->_sendAndReceive ($ target , $ opts );
120
120
}
121
121
122
+
123
+
124
+ protected function _returnURIIfOK ($ id ) {
125
+ try {
126
+ $ data = $ this ->get ("servers/ $ id " );
127
+ } catch (\Exception $ e ) {
128
+ return false ;
129
+ }
130
+ return $ data ["mongodb_uri " ];
131
+ }
132
+
133
+ protected function _returnURIIfAlive ($ info ) {
134
+ if (!isset ($ info ["procInfo " ])) {
135
+ return false ;
136
+ }
137
+
138
+ if ($ info ["procInfo " ]["alive " ]) {
139
+ return $ info ["mongodb_uri " ];
140
+ }
141
+
142
+ return false ;
143
+ }
144
+
122
145
protected function _sendAndReceive ($ target , $ opts ) {
123
146
$ context = stream_context_create ($ opts );
124
147
$ url = $ this ->baseuri . "/ " . $ target ;
0 commit comments