@@ -106,7 +106,44 @@ module.exports = {
106106 error ( "status:" + req . status + " : " + req . responseText )
107107 throw new Error ( req . responseText )
108108 }
109+ } ,
110+ createQueue : ( url , name , vhost ) => {
111+ log ( "Create queue " + JSON . stringify ( name )
112+ + " in vhost " + vhost + " on " + url )
113+ const req = new XMLHttpRequest ( )
114+ let base64Credentials = btoa ( 'administrator-only' + ":" + 'guest' )
115+ let finalUrl = url + "/api/queues/" + encodeURIComponent ( vhost ) + "/"
116+ + encodeURIComponent ( name )
117+ req . open ( 'PUT' , finalUrl , false )
118+ req . setRequestHeader ( "Authorization" , "Basic " + base64Credentials )
119+ req . setRequestHeader ( 'Content-Type' , 'application/json' )
120+
121+ req . send ( JSON . stringify ( vhost ) )
122+ if ( req . status == 200 || req . status == 204 || req . status == 201 ) {
123+ log ( "Succesfully created queue " + name )
124+ return
125+ } else {
126+ error ( "status:" + req . status + " : " + req . responseText )
127+ throw new Error ( req . responseText )
128+ }
129+ } ,
130+ deleteQueue : ( url , name , vhost ) => {
131+ log ( "Deleting queue " + name + " on vhost " + vhost )
132+ const req = new XMLHttpRequest ( )
133+ let base64Credentials = btoa ( 'administrator-only' + ":" + 'guest' )
134+ let finalUrl = url + "/api/queues/" + encodeURIComponent ( vhost ) + "/"
135+ + encodeURIComponent ( name )
136+ req . open ( 'DELETE' , finalUrl , false )
137+ req . setRequestHeader ( "Authorization" , "Basic " + base64Credentials )
138+
139+ req . send ( )
140+ if ( req . status == 200 || req . status == 204 ) {
141+ log ( "Succesfully deleted queue " + vhost )
142+ return
143+ } else {
144+ error ( "status:" + req . status + " : " + req . responseText )
145+ throw new Error ( req . responseText )
146+ }
109147 }
110148
111-
112149}
0 commit comments