Skip to content
This repository was archived by the owner on Dec 17, 2022. It is now read-only.

Commit 4eefb71

Browse files
committed
New functionality
1 parent d211895 commit 4eefb71

File tree

1 file changed

+29
-1
lines changed

1 file changed

+29
-1
lines changed

%CDEV.Server.cls

+29-1
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@ XData UrlMap [ XMLNamespace = "http://www.intersystems.com/urlmap" ]
2121
<Route Url="/namespaces/:namespace/globals" Method="GET" Call="GetGlobalList" />
2222
<Route Url="/namespaces/:namespace/globals/:globalname" Method="GET" Call="GetGlobal" />
2323
<Route Url="/namespaces/:namespace/queries" Method="POST" Call="QueryAction" />
24+
<Route Url="/namespaces/:namespace/code" Method="POST" Call="RunCode" />
2425
</Routes>
2526
}
2627

@@ -79,10 +80,12 @@ ClassMethod GetNamespace(namespace As %String) As %Status
7980
ClassMethod NamespaceObject(namespace As %String) As %CDEV.JSON.Object
8081
{
8182
s obj = $$$jsobj
83+
8284
s obj.id = ..CreatePath("namespaces", namespace)
8385
s obj.name = $zcvt(namespace, "U")
8486
s obj.files = ..CreatePath("namespaces", namespace, "files")
8587
s obj.xml = ..CreatePath("namespaces", namespace, "xml")
88+
s obj.queries = ..CreatePath("queries", namespace, "queries")
8689

8790
q obj
8891
}
@@ -250,7 +253,7 @@ ClassMethod PutXML(namespace As %String, filename As %String) As %Status
250253
s result = $$$jsobj
251254
if $$$ISERR(sc)
252255
{
253-
s result.success = $$$jstrue
256+
s result.success = $$$jsfalse
254257
s result.errors = $$DecomposeStatus^%apiOBJ(sc)
255258
} else {
256259
s result.success = $$$jstrue
@@ -324,11 +327,36 @@ ClassMethod QueryAction(namespace As %String)
324327
s request = ..GetRequest()
325328
i request.action = "execute"
326329
{
330+
s result = $$$jsobj
331+
332+
s st = ##class(%SQL.Statement).%New()
333+
s sc = st.%Prepare(request.content)
334+
if $$$ISERR(sc) {
335+
s result.success = $$$jsfalse
336+
} else {
337+
s result.success = $$$jstrue
338+
}
339+
s rs = st.%Execute()
340+
341+
342+
s result.success =
327343
d ##class(%ZEN.Auxiliary.jsonProvider).%WriteJSONFromSQL("",request.content)
328344
}
329345
q $$$OK
330346
}
331347

348+
ClassMethod RunCode(namespace As %String)
349+
{
350+
n $namespace
351+
s $namespace = namespace
352+
353+
s request = ..GetRequest()
354+
i request.action = "execute"
355+
{
356+
357+
}
358+
}
359+
332360
ClassMethod FileExtension(filename As %String) As %String
333361
{
334362
q $zcvt($p(filename, ".", *), "L")

0 commit comments

Comments
 (0)