1
1
<?xml version =" 1.0" encoding =" UTF-8" ?>
2
- <Export generator =" Cache" version =" 25" zv =" Cache for Windows (x86-64) 2015.2 (Build 540)" ts =" 2015-04-12 16:26:04" >
3
-
2
+ <Export generator =" Cache" version =" 25" zv =" Cache for Windows (x86-64) 2015.2 (Build 540)" ts =" 2015-04-28 19:50:48" >
4
3
<Class name =" UMLExplorer.ClassView" >
5
4
<Description >
6
5
Class contains methods that return structured class data.</Description >
7
- <TimeChanged >63668,60898.691763 </TimeChanged >
6
+ <TimeChanged >63670,72515.130814 </TimeChanged >
8
7
<TimeCreated >63653,67019.989197</TimeCreated >
9
8
10
9
<Method name =" getClassTree" >
@@ -57,6 +56,8 @@ return structured data about class</Description>
57
56
<Implementation ><![CDATA[
58
57
set oClass = ##class(%ZEN.proxyObject).%New()
59
58
59
+ set basePack = $LISTTOSTRING($LIST($LISTFROMSTRING(classDefinition.Name, "."), 1, *-1),".")
60
+
60
61
set oProperties = ##class(%ZEN.proxyObject).%New()
61
62
set oClass.NAMESPACE = $NAMESPACE
62
63
set oClass.super = classDefinition.Super
@@ -69,7 +70,8 @@ return structured data about class</Description>
69
70
do oProp.%DispatchSetProperty("private", p.Private)
70
71
do oProp.%DispatchSetProperty("readOnly", p.ReadOnly)
71
72
do oProp.%DispatchSetProperty("type", p.Type)
72
- do ..collectAggregation(oData, classDefinition.Name, p.Type)
73
+ do ..collectAggregation(oData, classDefinition.Name, p.Type, p.Private)
74
+ do ..collectAggregation(oData, classDefinition.Name, basePack _ "." _ p.Type, p.Private)
73
75
}
74
76
75
77
set oMethods = ##class(%ZEN.proxyObject).%New()
@@ -141,15 +143,16 @@ return structured data about class</Description>
141
143
142
144
<Method name =" collectAggregation" >
143
145
<ClassMethod >1</ClassMethod >
144
- <FormalSpec >oData:%ZEN.proxyObject,className:%String,type:%String</FormalSpec >
146
+ <FormalSpec >oData:%ZEN.proxyObject,className:%String,type:%String,private:%String </FormalSpec >
145
147
<ReturnType >%Status</ReturnType >
146
148
<Implementation ><![CDATA[
147
149
set classDef = ##class(%Dictionary.ClassDefinition).%OpenId(type)
148
150
if (classDef '= "") {
149
- set oAgg = oData.aggregation.%DispatchGetProperty(className)
151
+ if (private) { set t = "composition" } else { set t = "aggregation" }
152
+ set oAgg = oData.%DispatchGetProperty(t).%DispatchGetProperty(className)
150
153
if (oAgg = "") {
151
154
set oAgg = ##class(%ZEN.proxyObject).%New()
152
- do oData.aggregation .%DispatchSetProperty(className, oAgg)
155
+ do oData.%DispatchGetProperty(t) .%DispatchSetProperty(className, oAgg)
153
156
}
154
157
} else { quit $$$OK }
155
158
@@ -196,6 +199,7 @@ return structured data about class</Description>
196
199
set oData.classes = ##class(%ZEN.proxyObject).%New()
197
200
set oData.inheritance = ##class(%ZEN.proxyObject).%New()
198
201
set oData.aggregation = ##class(%ZEN.proxyObject).%New()
202
+ set oData.composition = ##class(%ZEN.proxyObject).%New()
199
203
200
204
set classes = ##class(%ResultSet).%New("%Dictionary.ClassDefinition:Summary")
201
205
do classes.Execute()
@@ -216,11 +220,11 @@ return structured data about class</Description>
216
220
</Class >
217
221
218
222
219
- <Project name =" UMLExplorer" LastModified =" 2015-04-26 00:42:57.542208 " >
223
+ <Project name =" UMLExplorer" LastModified =" 2015-04-28 19:55:49.450783 " >
220
224
<Items >
221
- <ProjectItem name =" UMLExplorer.ClassView" type =" CLS" / >
222
- <ProjectItem name =" UMLExplorer.Router" type =" CLS" / >
223
- <ProjectItem name =" UMLExplorer.StaticContent" type =" CLS" / >
225
+ <ProjectItem name =" UMLExplorer.ClassView" type =" CLS" ></ ProjectItem >
226
+ <ProjectItem name =" UMLExplorer.Router" type =" CLS" ></ ProjectItem >
227
+ <ProjectItem name =" UMLExplorer.StaticContent" type =" CLS" ></ ProjectItem >
224
228
</Items >
225
229
</Project >
226
230
@@ -229,7 +233,7 @@ return structured data about class</Description>
229
233
<Description >
230
234
REST interface for UMLExplorer</Description >
231
235
<Super >%CSP.REST</Super >
232
- <TimeChanged >63667,85509.960346 </TimeChanged >
236
+ <TimeChanged >63670,71431.319061 </TimeChanged >
233
237
<TimeCreated >63648,30450.187229</TimeCreated >
234
238
235
239
<XData name =" UrlMap" >
@@ -286,93 +290,76 @@ Returns all package class trees by given package name</Description>
286
290
]]> </Implementation >
287
291
</Method >
288
292
289
- <Method name =" Test" >
290
- <Description >
291
- Method to test accessibility of REST interface.</Description >
292
- <ClassMethod >1</ClassMethod >
293
- <ReturnType >%Status</ReturnType >
294
- <Implementation ><![CDATA[
295
- set resp = ##class(%ZEN.proxyObject).%New()
296
- set resp2 = ##class(%ZEN.proxyObject).%New()
297
- set resp2.Status = "OK"
298
- set resp.obj = resp2
299
- do resp.%ToJSON(, "o")
300
- return $$$OK
301
- ]]> </Implementation >
302
- </Method >
303
-
304
293
<Method name =" GetCss" >
294
+ <Description >
295
+ Method returns user application CSS.</Description >
305
296
<ClassMethod >1</ClassMethod >
306
297
<ReturnType >%Status</ReturnType >
307
298
<Implementation ><![CDATA[
308
299
set %response.CharSet = "utf-8"
309
300
set %response.ContentType = "text/css"
310
- do ##class(UMLExplorer. StaticContent).WriteCSS( )
301
+ do ##class(StaticContent).Write("CSS" )
311
302
return $$$OK
312
303
]]> </Implementation >
313
304
</Method >
314
305
315
306
<Method name =" GetJs" >
307
+ <Description >
308
+ Method returns user application JavaScript.</Description >
316
309
<ClassMethod >1</ClassMethod >
317
310
<ReturnType >%Status</ReturnType >
318
311
<Implementation ><![CDATA[
319
312
set %response.CharSet = "utf-8"
320
313
set %response.ContentType = "text/javascript"
321
- do ##class(UMLExplorer. StaticContent).WriteJS( )
314
+ do ##class(StaticContent).Write("JS" )
322
315
return $$$OK
323
316
]]> </Implementation >
324
317
</Method >
325
318
326
319
<Method name =" Index" >
327
320
<Description >
328
- Method returns user application.</Description >
321
+ Method returns user application HTML .</Description >
329
322
<ClassMethod >1</ClassMethod >
330
323
<ReturnType >%Status</ReturnType >
331
324
<Implementation ><![CDATA[
332
- &html<
333
- {{replace:html}}
334
- >
325
+ do ##class(StaticContent).Write("HTML")
335
326
return $$$OK
336
327
]]> </Implementation >
337
328
</Method >
338
329
</Class >
339
330
340
331
341
332
<Class name =" UMLExplorer.StaticContent" >
342
- <TimeChanged >63663,76108.945861 </TimeChanged >
333
+ <TimeChanged >63670,71368.846177 </TimeChanged >
343
334
<TimeCreated >63663,71456.865723</TimeCreated >
344
335
345
- <Method name =" WriteCSS " >
336
+ <Method name =" Write " >
346
337
<Description >
347
- Outputs css code for UMLExplorer application </Description >
338
+ Write the contents of xData tag </Description >
348
339
<ClassMethod >1</ClassMethod >
340
+ <FormalSpec >Const:%String</FormalSpec >
349
341
<ReturnType >%Status</ReturnType >
350
342
<Implementation ><![CDATA[
351
- Set xdata = ##class(%Dictionary.CompiledXData).%OpenId("UMLExplorer.StaticContent||CSS" ).Data
343
+ Set xdata = ##class(%Dictionary.CompiledXData).%OpenId("UMLExplorer.StaticContent||"_Const ).Data
352
344
set status=##class(%XML.TextReader).ParseStream(xdata, .textreader)
353
345
while textreader.Read() { if (textreader.NodeType="chars") { w textreader.Value } }
354
346
return $$$OK
355
347
]]> </Implementation >
356
348
</Method >
357
349
358
- <Method name =" WriteJS" >
359
- <Description >
360
- Outputs js code for UMLExplorer application</Description >
361
- <ClassMethod >1</ClassMethod >
362
- <ReturnType >%Status</ReturnType >
363
- <Implementation ><![CDATA[
364
- Set xdata = ##class(%Dictionary.CompiledXData).%OpenId("UMLExplorer.StaticContent||JS").Data
365
- set status=##class(%XML.TextReader).ParseStream(xdata, .textreader)
366
- while textreader.Read() { if (textreader.NodeType="chars") { w textreader.Value } }
367
- return $$$OK
368
- ]]> </Implementation >
369
- </Method >
350
+ <XData name =" HTML" >
351
+ <Data ><![CDATA[
352
+ <data><![CDATA[
353
+ {{replace:html}}
354
+ ]]]]> <![CDATA[ ></data>
355
+ ]]> </Data >
356
+ </XData >
370
357
371
358
<XData name =" CSS" >
372
359
<Data ><![CDATA[
373
- <data>
360
+ <data><![CDATA[
374
361
{{replace:css}}
375
- </data>
362
+ ]] ]]> <![CDATA[ > </data>
376
363
]]> </Data >
377
364
</XData >
378
365
0 commit comments