Author: nirmal070125
Date: Sat Jun 25 11:27:17 2011
New Revision: 1139524

URL: http://svn.apache.org/viewvc?rev=1139524&view=rev
Log: (empty)

Added:
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/input/composite3.xml
   (with props)
Modified:
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/Calculator_diagram.svg
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/store_diagram.svg
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/supplychain_diagram.svg
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/pom.xml
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/artifacts/Text.java
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/diagram/DiagramGenerator.java
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/layout/EntityBuilder.java
    
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/main/Main.java

Added: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/input/composite3.xml
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/input/composite3.xml?rev=1139524&view=auto
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/input/composite3.xml
 (added)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/input/composite3.xml
 Sat Jun 25 11:27:17 2011
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.    
+-->
+<composite xmlns="http://www.osoa.org/xmlns/sca/1.0";
+           targetNamespace="http://sample";
+           xmlns:sample="http://sample";
+           name="CalculatorTest">
+
+    <component name="CalculatorServiceComponent">
+               <implementation.java class="calculator.CalculatorServiceImpl"/>
+        <reference name="addService" target="AddServiceComponent" />
+        <reference name="subtractService" target="SubtractServiceComponent" />
+        <reference name="multiplyService" target="MultiplyServiceComponent" />
+        <reference name="divideService" target="DivideServiceComponent" />
+    </component>
+
+    <component name="AddServiceComponent">
+        <implementation.java class="calculator.AddServiceImpl"/>
+    </component>
+
+    <component name="SubtractServiceComponent">
+        <implementation.java class="calculator.SubtractServiceImpl"/>
+    </component>
+
+    <component name="MultiplyServiceComponent">
+        <implementation.java class="calculator.MultiplyServiceImpl"/>
+    </component>
+
+    <component name="DivideServiceComponent">
+        <implementation.java class="calculator.DivideServiceImpl"/>
+        <reference name="dividetestService" target="AddServiceComponent" />
+    </component>
+
+</composite>
\ No newline at end of file

Propchange: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/input/composite3.xml
------------------------------------------------------------------------------
    svn:executable = *

Modified: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/Calculator_diagram.svg
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/Calculator_diagram.svg?rev=1139524&r1=1139523&r2=1139524&view=diff
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/Calculator_diagram.svg
 (original)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/Calculator_diagram.svg
 Sat Jun 25 11:27:17 2011
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><svg 
xmlns:xlink="http://www.w3.org/1999/xlink"; xmlns="http://www.w3.org/2000/svg"; 
contentScriptType="text/ecmascript" zoomAndPan="magnify" 
contentStyleType="text/css" preserveAspectRatio="xMidYMid meet" 
version="1.0"><rect x="0" y="0" alignment-baseline="central" fill="#E5E5E5" 
width="900" rx="20" ry="20" height="1140" stroke="#919191"/><text x="450" 
font-size="20" dominant-baseline="mathematical" y="20" 
text-anchor="middle">Calculator</text><rect x="100" y="100" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="150" font-size="20" dominant-baseline="mathematical" y="250" 
text-anchor="middle">CalculatorServiceComponent</text><polygon fill="#BF3EFF" 
points="286,110 318,110 334,121 318,132 286,132 302,121 " 
stroke="#68228B"/><text x="286" font-size="20" dominant-baseline="mathematical" 
y="121" text-anchor="middle">addService</text><polygon fill="#BF3EFF" 
points="286,142 318,142 334,153 
 318,164 286,164 302,153 " stroke="#68228B"/><text x="286" font-size="20" 
dominant-baseline="mathematical" y="153" 
text-anchor="middle">subtractService</text><polygon fill="#BF3EFF" 
points="286,174 318,174 334,185 318,196 286,196 302,185 " 
stroke="#68228B"/><text x="286" font-size="20" dominant-baseline="mathematical" 
y="185" text-anchor="middle">multiplyService</text><polygon fill="#BF3EFF" 
points="286,206 318,206 334,217 318,228 286,228 302,217 " 
stroke="#68228B"/><text x="286" font-size="20" dominant-baseline="mathematical" 
y="217" text-anchor="middle">divideService</text><rect x="500" y="880" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="550" font-size="20" dominant-baseline="mathematical" 
y="1030" text-anchor="middle">AddServiceComponent</text><rect x="500" y="100" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="550" font-size="20" dominant-baseline="mathematic
 al" y="250" text-anchor="middle">SubtractServiceComponent</text><rect x="500" 
y="620" fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" 
height="130" stroke="#104E8B"/><text x="550" font-size="20" 
dominant-baseline="mathematical" y="770" 
text-anchor="middle">MultiplyServiceComponent</text><rect x="500" y="360" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="550" font-size="20" dominant-baseline="mathematical" 
y="510" text-anchor="middle">DivideServiceComponent</text></svg>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><svg 
xmlns:xlink="http://www.w3.org/1999/xlink"; xmlns="http://www.w3.org/2000/svg"; 
contentScriptType="text/ecmascript" zoomAndPan="magnify" 
contentStyleType="text/css" preserveAspectRatio="xMidYMid meet" 
version="1.0"><rect x="0" y="0" alignment-baseline="central" fill="#E5E5E5" 
width="1000" rx="20" ry="20" height="1240" stroke="#919191"/><text x="500" 
font-size="10" dominant-baseline="mathematical" y="20" 
text-anchor="middle">Calculator</text><rect x="200" y="200" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="250" font-size="10" dominant-baseline="mathematical" y="350" 
text-anchor="middle">CalculatorServiceComponent</text><polygon fill="#00CD66" 
points="180,210 210,210 225,225 210,240 180,240 195,225 " 
stroke="#008B45"/><text x="180" font-size="10" dominant-baseline="mathematical" 
y="225" text-anchor="middle"></text><polygon fill="#BF3EFF" points="386,210 
408,210 419,221 408,232 3
 86,232 397,221 " stroke="#68228B"/><text x="386" font-size="10" 
dominant-baseline="mathematical" y="221" 
text-anchor="middle">subtractService</text><polygon fill="#BF3EFF" 
points="386,242 408,242 419,253 408,264 386,264 397,253 " 
stroke="#68228B"/><text x="386" font-size="10" dominant-baseline="mathematical" 
y="253" text-anchor="middle">divideService</text><polygon fill="#BF3EFF" 
points="386,274 408,274 419,285 408,296 386,296 397,285 " 
stroke="#68228B"/><text x="386" font-size="10" dominant-baseline="mathematical" 
y="285" text-anchor="middle">multiplyService</text><polygon fill="#BF3EFF" 
points="386,306 408,306 419,317 408,328 386,328 397,317 " 
stroke="#68228B"/><text x="386" font-size="10" dominant-baseline="mathematical" 
y="317" text-anchor="middle">addService</text><rect x="600" y="980" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="650" font-size="10" dominant-baseline="mathematical" 
y="1130" text-anchor="middle">A
 ddServiceComponent</text><polygon fill="#00CD66" points="580,990 610,990 
625,1005 610,1020 580,1020 595,1005 " stroke="#008B45"/><text x="580" 
font-size="10" dominant-baseline="mathematical" y="1005" 
text-anchor="middle"></text><rect x="600" y="200" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="650" font-size="10" dominant-baseline="mathematical" y="350" 
text-anchor="middle">SubtractServiceComponent</text><polygon fill="#00CD66" 
points="580,210 610,210 625,225 610,240 580,240 595,225 " 
stroke="#008B45"/><text x="580" font-size="10" dominant-baseline="mathematical" 
y="225" text-anchor="middle"></text><rect x="600" y="720" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="650" font-size="10" dominant-baseline="mathematical" y="870" 
text-anchor="middle">MultiplyServiceComponent</text><polygon fill="#00CD66" 
points="580,730 610,730 625,745 610,760 580,760 595,745 " strok
 e="#008B45"/><text x="580" font-size="10" dominant-baseline="mathematical" 
y="745" text-anchor="middle"></text><rect x="600" y="460" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="650" font-size="10" dominant-baseline="mathematical" y="610" 
text-anchor="middle">DivideServiceComponent</text><polygon fill="#00CD66" 
points="580,470 610,470 625,485 610,500 580,500 595,485 " 
stroke="#008B45"/><text x="580" font-size="10" dominant-baseline="mathematical" 
y="485" text-anchor="middle"></text><polyline stroke-width="2" points="419,317 
595,1005" stroke="black"/><polyline stroke-width="2" points="419,253 595,485" 
stroke="black"/><polyline stroke-width="2" points="419,285 595,745" 
stroke="black"/><polyline stroke-width="2" points="419,221 595,225" 
stroke="black"/></svg>
\ No newline at end of file

Modified: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/store_diagram.svg
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/store_diagram.svg?rev=1139524&r1=1139523&r2=1139524&view=diff
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/store_diagram.svg
 (original)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/store_diagram.svg
 Sat Jun 25 11:27:17 2011
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><svg 
xmlns:xlink="http://www.w3.org/1999/xlink"; xmlns="http://www.w3.org/2000/svg"; 
contentScriptType="text/ecmascript" zoomAndPan="magnify" 
contentStyleType="text/css" preserveAspectRatio="xMidYMid meet" 
version="1.0"><rect x="0" y="0" alignment-baseline="central" fill="#E5E5E5" 
width="1300" rx="20" ry="20" height="620" stroke="#919191"/><text x="650" 
font-size="20" dominant-baseline="mathematical" y="20" 
text-anchor="middle">store</text><rect x="100" y="100" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="150" font-size="20" dominant-baseline="mathematical" y="250" 
text-anchor="middle">Store</text><polygon fill="#00CD66" points="80,110 110,110 
125,125 110,140 80,140 95,125 " stroke="#008B45"/><text x="80" font-size="20" 
dominant-baseline="mathematical" y="125" 
text-anchor="middle">Widget</text><polygon fill="#BF3EFF" points="280,110 
310,110 325,125 310,140 280,140 295,125 " stroke="
 #68228B"/><text x="280" font-size="20" dominant-baseline="mathematical" 
y="125" text-anchor="middle">catalog</text><polygon fill="#BF3EFF" 
points="280,150 310,150 325,165 310,180 280,180 295,165 " 
stroke="#68228B"/><text x="280" font-size="20" dominant-baseline="mathematical" 
y="165" text-anchor="middle">shoppingCart</text><polygon fill="#BF3EFF" 
points="280,190 310,190 325,205 310,220 280,220 295,205 " 
stroke="#68228B"/><text x="280" font-size="20" dominant-baseline="mathematical" 
y="205" text-anchor="middle">shoppingTotal</text><rect x="500" y="100" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="550" font-size="20" dominant-baseline="mathematical" 
y="250" text-anchor="middle">Catalog</text><polygon fill="#00CD66" 
points="480,110 510,110 525,125 510,140 480,140 495,125 " 
stroke="#008B45"/><text x="480" font-size="20" dominant-baseline="mathematical" 
y="125" text-anchor="middle">Catalog</text><polygon fill="#BF3EFF" poi
 nts="680,110 710,110 725,125 710,140 680,140 695,125 " stroke="#68228B"/><text 
x="680" font-size="20" dominant-baseline="mathematical" y="125" 
text-anchor="middle">currencyConverter</text><rect fill="#EEEE00" x="520" 
width="20" height="20" y="90" stroke="#EEC900"/><text x="520" font-size="20" 
dominant-baseline="mathematical" y="90" 
text-anchor="middle">currencyCode</text><rect x="500" y="360" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="550" font-size="20" dominant-baseline="mathematical" 
y="510" text-anchor="middle">ShoppingCart</text><polygon fill="#00CD66" 
points="480,370 510,370 525,385 510,400 480,400 495,385 " 
stroke="#008B45"/><text x="480" font-size="20" dominant-baseline="mathematical" 
y="385" text-anchor="middle">Cart</text><polygon fill="#00CD66" points="480,410 
510,410 525,425 510,440 480,440 495,425 " stroke="#008B45"/><text x="480" 
font-size="20" dominant-baseline="mathematical" y="425" text-anchor="midd
 le">Total</text><rect x="900" y="100" fill-opacity="0.75" fill="#3D59AB" 
width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text x="950" 
font-size="20" dominant-baseline="mathematical" y="250" 
text-anchor="middle">CurrencyConverter</text><polyline stroke-width="2" 
points="325,205 495,425" stroke="black"/><polyline stroke-width="2" 
points="325,165 495,385" stroke="black"/><polyline stroke-width="2" 
points="325,125 495,125" stroke="black"/></svg>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><svg 
xmlns:xlink="http://www.w3.org/1999/xlink"; xmlns="http://www.w3.org/2000/svg"; 
contentScriptType="text/ecmascript" zoomAndPan="magnify" 
contentStyleType="text/css" preserveAspectRatio="xMidYMid meet" 
version="1.0"><rect x="0" y="0" alignment-baseline="central" fill="#E5E5E5" 
width="1400" rx="20" ry="20" height="720" stroke="#919191"/><text x="700" 
font-size="10" dominant-baseline="mathematical" y="20" 
text-anchor="middle">store</text><rect x="200" y="200" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="250" font-size="10" dominant-baseline="mathematical" y="350" 
text-anchor="middle">Store</text><polygon fill="#00CD66" points="180,210 
210,210 225,225 210,240 180,240 195,225 " stroke="#008B45"/><text x="180" 
font-size="10" dominant-baseline="mathematical" y="225" 
text-anchor="middle">Widget</text><polygon fill="#BF3EFF" points="380,210 
410,210 425,225 410,240 380,240 395,225 " stro
 ke="#68228B"/><text x="380" font-size="10" dominant-baseline="mathematical" 
y="225" text-anchor="middle">catalog</text><polygon fill="#BF3EFF" 
points="380,250 410,250 425,265 410,280 380,280 395,265 " 
stroke="#68228B"/><text x="380" font-size="10" dominant-baseline="mathematical" 
y="265" text-anchor="middle">shoppingCart</text><polygon fill="#BF3EFF" 
points="380,290 410,290 425,305 410,320 380,320 395,305 " 
stroke="#68228B"/><text x="380" font-size="10" dominant-baseline="mathematical" 
y="305" text-anchor="middle">shoppingTotal</text><rect x="600" y="200" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="650" font-size="10" dominant-baseline="mathematical" 
y="350" text-anchor="middle">Catalog</text><polygon fill="#00CD66" 
points="580,210 610,210 625,225 610,240 580,240 595,225 " 
stroke="#008B45"/><text x="580" font-size="10" dominant-baseline="mathematical" 
y="225" text-anchor="middle">Catalog</text><polygon fill="#00CD66"
  points="580,250 610,250 625,265 610,280 580,280 595,265 " 
stroke="#008B45"/><text x="580" font-size="10" dominant-baseline="mathematical" 
y="265" text-anchor="middle"></text><polygon fill="#BF3EFF" points="780,210 
810,210 825,225 810,240 780,240 795,225 " stroke="#68228B"/><text x="780" 
font-size="10" dominant-baseline="mathematical" y="225" 
text-anchor="middle">currencyConverter</text><rect fill="#EEEE00" x="620" 
width="20" height="20" y="190" stroke="#EEC900"/><text x="620" font-size="10" 
dominant-baseline="mathematical" y="190" 
text-anchor="middle">currencyCode</text><rect x="600" y="460" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="650" font-size="10" dominant-baseline="mathematical" 
y="610" text-anchor="middle">ShoppingCart</text><polygon fill="#00CD66" 
points="580,470 610,470 625,485 610,500 580,500 595,485 " 
stroke="#008B45"/><text x="580" font-size="10" dominant-baseline="mathematical" 
y="485" text-anchor="mi
 ddle">Cart</text><polygon fill="#00CD66" points="580,510 610,510 625,525 
610,540 580,540 595,525 " stroke="#008B45"/><text x="580" font-size="10" 
dominant-baseline="mathematical" y="525" 
text-anchor="middle">Total</text><polygon fill="#00CD66" points="580,550 
610,550 625,565 610,580 580,580 595,565 " stroke="#008B45"/><text x="580" 
font-size="10" dominant-baseline="mathematical" y="565" 
text-anchor="middle"></text><rect x="1000" y="200" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="1050" font-size="10" dominant-baseline="mathematical" y="350" 
text-anchor="middle">CurrencyConverter</text><polygon fill="#00CD66" 
points="980,210 1010,210 1025,225 1010,240 980,240 995,225 " 
stroke="#008B45"/><text x="980" font-size="10" dominant-baseline="mathematical" 
y="225" text-anchor="middle"></text><polyline stroke-width="2" points="425,305 
595,525" stroke="black"/><polyline stroke-width="2" points="425,265 595,485" 
stroke="black"/><
 polyline stroke-width="2" points="425,225 595,225" stroke="black"/><polyline 
stroke-width="2" points="825,225 995,225" stroke="black"/></svg>
\ No newline at end of file

Modified: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/supplychain_diagram.svg
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/supplychain_diagram.svg?rev=1139524&r1=1139523&r2=1139524&view=diff
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/supplychain_diagram.svg
 (original)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/output/supplychain_diagram.svg
 Sat Jun 25 11:27:17 2011
@@ -1 +1 @@
-<?xml version="1.0" encoding="UTF-8"?><svg 
xmlns:xlink="http://www.w3.org/1999/xlink"; xmlns="http://www.w3.org/2000/svg"; 
contentScriptType="text/ecmascript" zoomAndPan="magnify" 
contentStyleType="text/css" preserveAspectRatio="xMidYMid meet" 
version="1.0"><rect x="0" y="0" alignment-baseline="central" fill="#E5E5E5" 
width="1700" rx="20" ry="20" height="360" stroke="#919191"/><text x="850" 
font-size="20" dominant-baseline="mathematical" y="20" 
text-anchor="middle">supplychain</text><rect x="100" y="100" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="150" font-size="20" dominant-baseline="mathematical" 
y="250" text-anchor="middle">CustomerComponent</text><polygon fill="#BF3EFF" 
points="280,110 310,110 325,125 310,140 280,140 295,125 " 
stroke="#68228B"/><text x="280" font-size="20" dominant-baseline="mathematical" 
y="125" text-anchor="middle">retailer</text><rect x="500" y="100" 
fill-opacity="0.75" fill="#3D59AB" width="20
 0" rx="20" ry="20" height="130" stroke="#104E8B"/><text x="550" font-size="20" 
dominant-baseline="mathematical" y="250" 
text-anchor="middle">RetailerComponent</text><polygon fill="#BF3EFF" 
points="680,110 710,110 725,125 710,140 680,140 695,125 " 
stroke="#68228B"/><text x="680" font-size="20" dominant-baseline="mathematical" 
y="125" text-anchor="middle">warehouse</text><rect x="900" y="100" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="950" font-size="20" dominant-baseline="mathematical" 
y="250" text-anchor="middle">WarehouseComponent</text><polygon fill="#BF3EFF" 
points="1080,110 1110,110 1125,125 1110,140 1080,140 1095,125 " 
stroke="#68228B"/><text x="1080" font-size="20" 
dominant-baseline="mathematical" y="125" 
text-anchor="middle">shipper</text><rect x="1300" y="100" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="1350" font-size="20" dominant-baseline="mathema
 tical" y="250" text-anchor="middle">ShipperComponent</text><polygon 
fill="#BF3EFF" points="1480,110 1510,110 1525,125 1510,140 1480,140 1495,125 " 
stroke="#68228B"/><text x="1480" font-size="20" 
dominant-baseline="mathematical" y="125" 
text-anchor="middle">customer</text></svg>
\ No newline at end of file
+<?xml version="1.0" encoding="UTF-8"?><svg 
xmlns:xlink="http://www.w3.org/1999/xlink"; xmlns="http://www.w3.org/2000/svg"; 
contentScriptType="text/ecmascript" zoomAndPan="magnify" 
contentStyleType="text/css" preserveAspectRatio="xMidYMid meet" 
version="1.0"><rect x="0" y="0" alignment-baseline="central" fill="#E5E5E5" 
width="1800" rx="20" ry="20" height="460" stroke="#919191"/><text x="900" 
font-size="10" dominant-baseline="mathematical" y="20" 
text-anchor="middle">supplychain</text><rect x="200" y="200" 
fill-opacity="0.75" fill="#3D59AB" width="200" rx="20" ry="20" height="130" 
stroke="#104E8B"/><text x="250" font-size="10" dominant-baseline="mathematical" 
y="350" text-anchor="middle">CustomerComponent</text><polygon fill="#00CD66" 
points="180,210 210,210 225,225 210,240 180,240 195,225 " 
stroke="#008B45"/><text x="180" font-size="10" dominant-baseline="mathematical" 
y="225" text-anchor="middle"></text><polygon fill="#BF3EFF" points="380,210 
410,210 425,225 410,240 380,240 39
 5,225 " stroke="#68228B"/><text x="380" font-size="10" 
dominant-baseline="mathematical" y="225" 
text-anchor="middle">retailer</text><rect x="600" y="200" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="650" font-size="10" dominant-baseline="mathematical" y="350" 
text-anchor="middle">RetailerComponent</text><polygon fill="#00CD66" 
points="580,210 610,210 625,225 610,240 580,240 595,225 " 
stroke="#008B45"/><text x="580" font-size="10" dominant-baseline="mathematical" 
y="225" text-anchor="middle"></text><polygon fill="#BF3EFF" points="780,210 
810,210 825,225 810,240 780,240 795,225 " stroke="#68228B"/><text x="780" 
font-size="10" dominant-baseline="mathematical" y="225" 
text-anchor="middle">warehouse</text><rect x="1000" y="200" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="1050" font-size="10" dominant-baseline="mathematical" y="350" 
text-anchor="middle">WarehouseCom
 ponent</text><polygon fill="#00CD66" points="980,210 1010,210 1025,225 
1010,240 980,240 995,225 " stroke="#008B45"/><text x="980" font-size="10" 
dominant-baseline="mathematical" y="225" text-anchor="middle"></text><polygon 
fill="#BF3EFF" points="1180,210 1210,210 1225,225 1210,240 1180,240 1195,225 " 
stroke="#68228B"/><text x="1180" font-size="10" 
dominant-baseline="mathematical" y="225" 
text-anchor="middle">shipper</text><rect x="1400" y="200" fill-opacity="0.75" 
fill="#3D59AB" width="200" rx="20" ry="20" height="130" stroke="#104E8B"/><text 
x="1450" font-size="10" dominant-baseline="mathematical" y="350" 
text-anchor="middle">ShipperComponent</text><polygon fill="#00CD66" 
points="1380,210 1410,210 1425,225 1410,240 1380,240 1395,225 " 
stroke="#008B45"/><text x="1380" font-size="10" 
dominant-baseline="mathematical" y="225" text-anchor="middle"></text><polygon 
fill="#BF3EFF" points="1580,210 1610,210 1625,225 1610,240 1580,240 1595,225 " 
stroke="#68228B"/><text x="1580" font-
 size="10" dominant-baseline="mathematical" y="225" 
text-anchor="middle">customer</text><polyline stroke-width="2" points="425,225 
595,225" stroke="black"/><polyline stroke-width="2" points="825,225 995,225" 
stroke="black"/><polyline stroke-width="2" points="1225,225 1395,225" 
stroke="black"/><polyline stroke-width="2" points="1625,225 195,225" 
stroke="black"/></svg>
\ No newline at end of file

Modified: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/pom.xml
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/pom.xml?rev=1139524&r1=1139523&r2=1139524&view=diff
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/pom.xml
 (original)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/pom.xml
 Sat Jun 25 11:27:17 2011
@@ -98,6 +98,12 @@
             <scope>test</scope>
         </dependency>
 
+        <dependency>
+            <groupId>org.apache.tuscany.sca</groupId>
+            <artifactId>tuscany-base-runtime</artifactId>
+            <version>2.0-SNAPSHOT</version>
+        </dependency>
+
     </dependencies>
 
 

Modified: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/artifacts/Text.java
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/artifacts/Text.java?rev=1139524&r1=1139523&r2=1139524&view=diff
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/artifacts/Text.java
 (original)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/artifacts/Text.java
 Sat Jun 25 11:27:17 2011
@@ -31,7 +31,7 @@ public class Text {
                text.setAttributeNS(null, "y", y+"");
                text.setAttributeNS(null, "text-anchor", "middle");
                text.setAttributeNS(null, "dominant-baseline", "mathematical");
-               text.setAttributeNS(null, "font-size", "20");
+               text.setAttributeNS(null, "font-size", "10");
                text.setTextContent(content);
                
                return text;

Modified: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/diagram/DiagramGenerator.java
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/diagram/DiagramGenerator.java?rev=1139524&r1=1139523&r2=1139524&view=diff
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/diagram/DiagramGenerator.java
 (original)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/diagram/DiagramGenerator.java
 Sat Jun 25 11:27:17 2011
@@ -107,6 +107,7 @@ public class DiagramGenerator {
        private Reference getRef(String ref) {
 
                for(Reference r: refs){
+                       
                        if(r.getContainerName().equals(ref) || 
r.getName().equals(ref)){
                                return r;
                        }
@@ -139,7 +140,7 @@ public class DiagramGenerator {
                int x=(ent.getX()+ent.getWidth())-(refHeight*2/3);
                int y=ent.getY()+Reference.SPACING;
 
-               for(String ref: ent.getReferences()){
+               for(String ref: setRefOrder(ent)){
                        Reference refer= new Reference();
                        Element polygon = refer.addElement(doc, svgNS, x, y, 
refHeight);
                        Element text = Text.addTextElement(doc, svgNS, x, 
y+refHeight/2, ref);
@@ -155,6 +156,69 @@ public class DiagramGenerator {
                }
        }
 
+       private String[] setRefOrder(Entity e){
+       
+               ArrayList<String> refs = e.getReferences();
+               ArrayList<String> sers = new ArrayList<String>();
+               String[] orderedRefs = new String[refs.size()];
+               
+               for(int i=0;i<refs.size();i++){
+                       sers.add(i, "");
+               }
+               
+               for(Iterator it= 
e.getReferenceToServiceMap().entrySet().iterator();it.hasNext();){
+                       Entry entry = (Entry) it.next(); 
+                       String ref = (String)entry.getKey(); 
+                       String ser = (String)entry.getValue();
+                       
+                       int idx= refs.indexOf(ref);
+                       System.out.println("---------"+sers.get(idx));
+                       sers.remove(idx);
+                       sers.add(idx ,ser);
+                       System.out.println(refs.get(idx)+"---"+sers.get(idx));
+                       
+               }
+               
+               for(String eName: e.getAdjacentEntities()){
+                       for(Entity ent: entities){
+
+                               if(ent.getComponentName().equals(eName)){
+                                       for(String s : sers){
+                                               for(String s1: 
ent.getServices()){
+                                                       
//System.err.println("XXXXX "+ s1 +" ::: "+s);
+                                                       if(s1.equals(s) || 
s.equals(ent.getComponentName())){
+                                                               
System.err.println("|||||||| "+ sers.size()+ " ||| " + refs.size()+"|| 
"+orderedRefs.length);
+                                                               
if(orderedRefs[ent.getLevel()] == null){
+//                                                                     
System.err.println("XXXXX "+ sers.get(1)+ " ::::::: "+refs.get(1));
+//                                                                     
System.err.println("XXXXX "+ sers.get(2)+ " ::::::: "+refs.get(2));
+//                                                                     
System.err.println("XXXXX "+ sers.get(3)+ " ::::::: "+refs.get(3));
+                                                                       
System.err.println("XXXXX "+ refs.get(sers.indexOf(s))+" ::: "+ent.getLevel()+" 
::: "+ent.getComponentName());
+                                                                       
orderedRefs[ent.getLevel()] = refs.get(sers.indexOf(s));
+                                                                       break;
+                                                               }
+                                                               else{
+                                                                       for(int 
i=ent.getLevel();i<orderedRefs.length;i++){
+                                                                               
if(orderedRefs[i]== null){
+                                                                               
        
+                                                                               
        orderedRefs[i] = refs.get(sers.indexOf(s));
+                                                                               
        break;
+                                                                               
}
+                                                                               
else{
+                                                                               
        if(i==orderedRefs.length)
+                                                                               
                System.out.println("GRRR");
+                                                                               
}
+                                                                       }
+                                                               }
+                                                       }
+                                               }
+                                       }
+                               }
+                       }
+               }
+               
+               return orderedRefs;
+       }
+       
        private void addService(Entity ent) {
                int serHeight = ent.getSerHeight();
                int x=ent.getX()-(serHeight*2/3);
@@ -163,7 +227,12 @@ public class DiagramGenerator {
                for(String ser: ent.getServices()){
                        Service serve= new Service();
                        Element polygon = serve.addElement(doc, svgNS, x, y, 
serHeight);
-                       Element text = Text.addTextElement(doc, svgNS, x, 
y+serHeight/2, ser);
+                       Element text;
+                       if(!ser.endsWith("Impl"))
+                               text = Text.addTextElement(doc, svgNS, x, 
y+serHeight/2, ser);
+                       else
+                               text = Text.addTextElement(doc, svgNS, x, 
y+serHeight/2, "");
+                       
                        svgRoot.appendChild(polygon);
                        svgRoot.appendChild(text);
                        

Modified: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/layout/EntityBuilder.java
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/layout/EntityBuilder.java?rev=1139524&r1=1139523&r2=1139524&view=diff
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/layout/EntityBuilder.java
 (original)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/impl/layout/EntityBuilder.java
 Sat Jun 25 11:27:17 2011
@@ -29,20 +29,52 @@ import org.w3c.dom.NodeList;
 public class EntityBuilder {
 
        private Document dom;
-       private final int initPoint = 100;//initial point
+       private final int initPoint = 200;//initial point
        private final int spaceX = Component.DEFAULT_WIDTH*2;
        private final int spaceY = Component.DEFAULT_HEIGHT*2;
        private ArrayList<Integer> levelCount = new 
ArrayList<Integer>();//keeps track of levels used in lanes
+       //components connected to each other are tracked using following map
        private HashMap<String, ArrayList<String>> connectedEntities = new 
HashMap<String, ArrayList<String>>();
        private int totalWidth=0;
        private int totalHeight=0;
        private Entity startEnt = null;
        private String compositeName;
        
+       /**
+        * Constructor which initiates the DOM document
+        * @param aDom DOM document
+        */
        public EntityBuilder(Document aDom){
                dom = aDom;
        }
 
+       /**
+        * Layout Building Algorithm
+        * ~~~~~~~~~~~~~~~~~~~~~~~~~
+        * 
+        * An Entity object represents a component element of a composite XML.
+        * Here we position (i.e. assigning a level and a lane) all such 
components
+        * in a unique cell of a grid.
+        * 
+        *                      lane0     lane1   lane2   lane3 ....
+        *                       _______________________________
+        * level0       |               |               |               |       
        |
+        *                      |_______|_______|_______|_______|
+        * level1       |               |               |               |       
        |
+        *                      |_______|_______|_______|_______|
+        * level2       |               |               |               |       
        |     
+        * 
+        * 1) Determining the Entity at level0, lane0 (starting entity)
+        *              -First Entity in the list of Entities which has one or 
more adjacent Entities
+        *              -If there is only one Entity it will eventually chosen
+        * 
+        * 2) Get adjacent Entities of starting Entity. 
+        *              * If there are adjacent entities;
+        *                      *For each adjacent Entity; 
+        *      
+        * 
+        * @return
+        */
        public Entity[] buildEntities(){
                Entity[] elts = null;
                //get the root element
@@ -146,6 +178,8 @@ public class EntityBuilder {
                                                }
                                                if(i<ents.length)
                                                        assignPositions(ents, 
aEnt);
+//                                             else
+//                                                     System.out.println(i+ " 
<<<<< "+ents.length);
                                                break;
                                        }
 
@@ -242,6 +276,17 @@ public class EntityBuilder {
                                ent.addAService(elt.getAttribute("name"));
                        }
                }
+               
+               NodeList nl1 = nVal.getElementsByTagName("implementation.java");
+               if(nl1 != null && nl1.getLength() > 0 ) {
+                       for(int i = 0 ; i < nl1.getLength();i++) {
+                               Element elt = (Element)nl1.item(i);
+                               System.out.println(elt.getAttribute("class"));
+                               String serName = 
elt.getAttribute("class").split("\\.")[1];
+                               ent.addAService(serName);
+                       }
+               }
+               
        }
 
        private void setProperties(Element nVal, Entity ent) {

Modified: 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/main/Main.java
URL: 
http://svn.apache.org/viewvc/tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/main/Main.java?rev=1139524&r1=1139523&r2=1139524&view=diff
==============================================================================
--- 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/main/Main.java
 (original)
+++ 
tuscany/collaboration/GSoC-2011-Nirmal/CompositeDiagramGeneratorUsingBatik/src/main/java/org/apache/tuscany/sca/main/Main.java
 Sat Jun 25 11:27:17 2011
@@ -38,7 +38,7 @@ public class Main {
        public static void main(String[] args) throws Exception {
 
                XMLReader reader = new XMLReader();
-               Document doc 
=reader.parseXMLFile(System.getProperty("user.dir")+"/input/composite2.xml");
+               Document doc 
=reader.parseXMLFile(System.getProperty("user.dir")+"/input/composite3.xml");
                EntityBuilder eb = new EntityBuilder(doc);
                Entity[] ents =eb.buildEntities();
                DiagramGenerator dg = new DiagramGenerator(ents, 
eb.getTotalHeight(), eb.getTotalWidth(), eb.getCompositeName());


Reply via email to