Add sample database and search components, sample apps and corresponding test cases, and minor refactoring of component categories.

git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1088507 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
jsdelfino 2011-04-04 08:45:59 +00:00
parent ba94229ea5
commit 37104d47a3
27 changed files with 1178 additions and 319 deletions

View file

@ -165,7 +165,9 @@ const failable<bool> post(const value& key, const value& val, FileDB& db) {
if (isList(key))
mkdirs(key, db.name);
ofstream os(filename(key, db.name));
const string fn = filename(key, db.name);
debug(fn, "filedb::post::filename");
ofstream os(fn);
if (os.fail())
return mkfailure<bool>("Couldn't post file database entry.");
const failable<bool> r = write(val, os, db.format, db);
@ -184,7 +186,9 @@ const failable<bool> put(const value& key, const value& val, FileDB& db) {
if (isList(key))
mkdirs(key, db.name);
ofstream os(filename(key, db.name));
const string fn = filename(key, db.name);
debug(fn, "filedb::put::filename");
ofstream os(fn);
if (os.fail())
return mkfailure<bool>("Couldn't put file database entry.");
const failable<bool> r = write(val, os, db.format, db);
@ -218,7 +222,9 @@ const failable<bool> del(const value& key, FileDB& db) {
debug(key, "filedb::delete::key");
debug(db.name, "filedb::delete::dbname");
const int rc = unlink(c_str(filename(key, db.name)));
const string fn = filename(key, db.name);
debug(fn, "filedb::del::filename");
const int rc = unlink(c_str(fn));
if (rc == -1)
return mkfailure<bool>("Couldn't delete file database entry.");

View file

@ -28,7 +28,7 @@
<service name="get"/>
<reference target="format" name="url"/>
</component>
<component t:x="635" t:y="232" name="list" t:title="make list" t:color="yellow1">
<component t:x="635" t:y="232" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text4" name="item" t:clonable="true"/>
@ -46,7 +46,7 @@
<service name="page" t:visible="false">
<t:binding.http uri="page"/>
</service>
<reference target="assoc4" name="content"/>
<reference target="pair4" name="content"/>
</component>
<component t:x="393" t:y="86" name="name" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
@ -84,35 +84,35 @@
<service name="name"/>
<property>buzzprofile</property>
</component>
<component t:x="392" t:y="44" name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="392" t:y="44" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name" name="name"/>
<reference target="fbprofile" name="value"/>
</component>
<component t:x="315" t:y="44" name="list2" t:title="make list" t:color="yellow1">
<component t:x="315" t:y="44" name="list2" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="assoc" name="item" t:clonable="true"/>
<reference target="assoc2" name="item" t:clonable="true"/>
<reference target="pair" name="item" t:clonable="true"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="256" t:y="16" name="assoc4" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="256" t:y="16" name="pair4" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name4" name="name"/>
<reference target="list2" name="value"/>
</component>
<component t:x="392" t:y="116" name="assoc2" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="392" t:y="116" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name2" name="name"/>
<reference target="twprofile" name="value"/>
</component>
<service name="assoc3" promote="assoc3"/>
<component t:x="173" t:y="275" name="assoc3" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<service name="pair3" promote="pair3"/>
<component t:x="173" t:y="275" name="pair3" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name3" name="name"/>
<reference target="get" name="value"/>
</component>

View file

@ -52,7 +52,7 @@
<SPAN id="section" class="section" style="position: absolute; top: 253px; left: 1px; ">
<SPAN>Twitter</SPAN>
</SPAN>
<SPAN id="h1" class="h1" style="position: absolute; top: 6px; left: 0px; ">
<H1>My profiles</H1>
<SPAN id="h2" class="h2" style="position: absolute; top: 11px; left: 0px; ">
<H2>Me360</H2>
</SPAN>
</DIV>

View file

@ -18,105 +18,468 @@
* under the License.
-->
<composite xmlns="http://docs.oasis-open.org/ns/opencsa/sca/200912" xmlns:t="http://tuscany.apache.org/xmlns/sca/1.1" targetNamespace="http://nearme" name="nearme">
<component t:x="234" t:y="25" name="fbfriend" t:color="yellow1">
<t:implementation.python script="item.py"/>
<service name="item"/>
<property name="property"/>
<service name="location" promote="location"/>
<component t:x="1" t:y="138" name="location" t:title="on location change" t:color="green1">
<t:implementation.python script="nuvem/location.py"/>
<service name="location" t:visible="false">
<t:binding.http uri="location"/>
</service>
<reference target="put" name="content"/>
</component>
<component t:x="233" t:y="97" name="fbfriends" t:title="facebook friends" t:color="blue1">
<t:implementation.python script="fbfriends.py"/>
<service name="fbfriends"/>
<reference target="find" name="id"/>
<component t:x="827" t:y="143" name="filedb2" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="352" t:y="96" name="find" t:title="find by name" t:color="yellow1">
<t:implementation.python script="find.py"/>
<service name="find"/>
<component t:x="761" t:y="257" name="filedb3" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="779" t:y="386" name="get3" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb4" name="collection"/>
<reference target="param4" name="id"/>
</component>
<component t:x="811" t:y="384" name="filedb4" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="777" t:y="543" name="get4" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb5" name="collection"/>
<reference target="param5" name="id"/>
</component>
<component t:x="814" t:y="554" name="filedb5" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="773" t:y="193" name="get2" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb3" name="collection"/>
<reference target="param3" name="id"/>
</component>
<component t:x="720" t:y="585" name="pair5" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name9" name="name"/>
<reference target="get4" name="value"/>
</component>
<component t:x="717" t:y="394" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name" name="name"/>
<reference target="params" name="assoc"/>
<reference target="get3" name="value"/>
</component>
<component t:x="453" t:y="97" name="name" t:title="name" t:color="orange1">
<t:implementation.python script="name.py"/>
<component t:x="721" t:y="201" name="pair4" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name8" name="name"/>
<reference target="get2" name="value"/>
</component>
<component t:x="314" t:y="147" name="name2" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>fbid</property>
<property>longitude</property>
</component>
<component t:x="453" t:y="138" name="params" t:title="?params" t:color="green1">
<t:implementation.python script="params.py"/>
<component t:x="311" t:y="222" name="name3" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>latitude</property>
</component>
<component t:x="865" t:y="408" name="name7" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend2</property>
</component>
<component t:x="866" t:y="527" name="name10" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend3</property>
</component>
<component t:x="654" t:y="72" name="get" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb2" name="collection"/>
<reference target="user2" name="id"/>
</component>
<component t:x="170" t:y="126" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text7" name="item" t:clonable="true"/>
<reference target="param2" name="item" t:clonable="true"/>
<reference target="param" name="item" t:clonable="true"/>
<reference target="now" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<service name="page" promote="page"/>
<component t:x="0" t:y="45" name="page" t:title="when page opens" t:color="green1">
<t:implementation.python script="nuvem/page.py"/>
<service name="page" t:visible="false">
<t:binding.http uri="page"/>
</service>
<reference target="pair13" name="content"/>
</component>
<component t:x="127" t:y="415" name="pair13" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name13" name="name"/>
<reference target="user3" name="value"/>
</component>
<component t:x="169" t:y="416" name="name13" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>me</property>
</component>
<component t:x="169" t:y="144" name="filedb" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="162" t:y="77" name="user3" t:title="user" t:color="green1">
<t:implementation.python script="nuvem/user.py"/>
<service name="user"/>
<property name="user" t:visible="false"/>
</component>
<component t:x="214" t:y="259" name="param2" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name3" name="name"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="215" t:y="296" name="param" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name2" name="name"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="217" t:y="231" name="text7" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>green</property>
</component>
<component t:x="216" t:y="329" name="now" t:title="now" t:color="orange1">
<t:implementation.python script="nuvem/now.py"/>
<service name="now"/>
</component>
<component t:x="169" t:y="168" name="user" t:title="user" t:color="green1">
<t:implementation.python script="nuvem/user.py"/>
<service name="user"/>
<property name="user" t:visible="false"/>
</component>
<component t:x="796" t:y="196" name="user2" t:title="user" t:color="green1">
<t:implementation.python script="nuvem/user.py"/>
<service name="user"/>
<property name="user" t:visible="false"/>
</component>
<component t:x="796" t:y="298" name="param3" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name4" name="name"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="794" t:y="409" name="param4" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name7" name="name"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="797" t:y="516" name="param5" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name10" name="name"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="130" t:y="138" name="put" t:title="put" t:color="green1">
<t:implementation.python script="nuvem/put.py"/>
<service name="put"/>
<reference target="filedb" name="collection"/>
<reference target="user" name="id"/>
<reference target="list" name="value"/>
</component>
<service name="every" promote="every"/>
<component t:x="493" t:y="13" name="every" t:title="every n millisec" t:color="green1">
<t:implementation.python script="nuvem/every.py"/>
<service name="every" t:visible="false">
<t:binding.http uri="every"/>
</service>
<reference target="number" name="n"/>
<reference target="list2" name="content"/>
</component>
<service name="map" promote="map"/>
<component t:x="3" t:y="389" name="map" t:title="on {compname} widget" t:color="green1">
<t:implementation.python script="nuvem/widget.py"/>
<service name="widget" t:visible="false"/>
<reference target="googlemap" name="content"/>
</component>
<component t:x="705" t:y="137" name="pair6" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name11" name="name"/>
<reference target="get" name="value"/>
</component>
<component t:x="866" t:y="334" name="name4" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend1</property>
</component>
<component t:x="677" t:y="178" name="list5" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="pair6" name="item" t:clonable="true"/>
<reference target="pair4" name="item" t:clonable="true"/>
<reference target="pair" name="item" t:clonable="true"/>
<reference target="pair5" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="619" t:y="103" name="params" t:title="?params" t:color="green1">
<t:implementation.python script="nuvem/params.py"/>
<service name="params"/>
<property>fbid=1234567</property>
<property name="query" t:visible="false"/>
</component>
<component t:x="274" t:y="97" name="mile" t:title="number" t:color="orange1">
<t:implementation.python script="number.py"/>
<service name="number"/>
<component t:x="561" t:y="55" name="name5" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>mapimg</property>
</component>
<component t:x="561" t:y="83" name="format" t:title="format" t:color="magenta1">
<t:implementation.python script="nuvem/format_.py"/>
<service name="format"/>
<reference target="text" name="pattern"/>
<reference target="params" name="values"/>
</component>
<component t:x="792" t:y="284" name="filedb6" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="653" t:y="212" name="user4" t:title="user" t:color="green1">
<t:implementation.python script="nuvem/user.py"/>
<service name="user"/>
<property name="user" t:visible="false"/>
</component>
<component t:x="648" t:y="185" name="filedb7" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="651" t:y="313" name="param6" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name15" name="name"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="897" t:y="309" name="param7" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name18" name="name"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="898" t:y="284" name="filedb8" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="675" t:y="394" name="filedb9" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="676" t:y="419" name="param8" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name16" name="name"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="569" t:y="366" name="pair8" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name14" name="name"/>
<reference target="first3" name="value"/>
</component>
<component t:x="574" t:y="415" name="pair9" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name17" name="name"/>
<reference target="first4" name="value"/>
</component>
<component t:x="729" t:y="311" name="name15" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend1</property>
</component>
<component t:x="730" t:y="417" name="name16" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend2</property>
</component>
<component t:x="730" t:y="531" name="name18" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend3</property>
</component>
<component t:x="604" t:y="41" name="list2" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference target="pair7" name="item" t:clonable="true"/>
<reference target="pair3" name="item" t:clonable="true"/>
<reference target="pair8" name="item" t:clonable="true"/>
<reference target="pair9" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="652" t:y="141" name="pair7" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name12" name="name"/>
<reference target="first" name="value"/>
</component>
<component t:x="652" t:y="241" name="pair3" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name6" name="name"/>
<reference target="first2" name="value"/>
</component>
<component t:x="692" t:y="141" name="name12" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>myloc</property>
</component>
<component t:x="692" t:y="241" name="name6" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend1loc</property>
</component>
<component t:x="692" t:y="349" name="name14" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend2loc</property>
</component>
<component t:x="692" t:y="457" name="name17" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>friend3loc</property>
</component>
<component t:x="272" t:y="489" name="name8" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>1</property>
</component>
<component t:x="484" t:y="68" name="name2" t:title="name" t:color="orange1">
<t:implementation.python script="name.py"/>
<component t:x="272" t:y="597" name="name" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>id</property>
<property>2</property>
</component>
<component t:x="226" t:y="29" name="lesser" t:title="lt" t:color="magenta1">
<t:implementation.python script="lesser.py"/>
<service name="lesser"/>
<reference target="distance" name="value1"/>
<reference target="mile" name="value2"/>
</component>
<component t:x="378" t:y="25" name="text2" t:title="text" t:color="orange1">
<t:implementation.python script="text.py"/>
<service name="text"/>
<property>jane</property>
</component>
<component t:x="227" t:y="240" name="nothing" t:title="nothing" t:color="orange1">
<t:implementation.python script="text.py"/>
<service name="nothing"/>
</component>
<component t:x="132" t:y="31" name="if" t:title="if" t:color="magenta1">
<t:implementation.python script="if_.py"/>
<service name="if"/>
<reference target="lesser" name="condition"/>
<reference target="assoc" name="then"/>
<reference target="nothing" name="else"/>
</component>
<component t:x="600" t:y="113" name="text" t:title="text" t:color="orange1">
<t:implementation.python script="text.py"/>
<service name="text"/>
<property>joe</property>
</component>
<service name="opened" promote="opened"/>
<component t:x="205" t:y="84" name="opened" t:title="when page opened" t:color="green1">
<t:implementation.python script="opened.py"/>
<service name="opened" t:visible="false"/>
<reference target="if" name="content"/>
</component>
<component t:x="175" t:y="198" name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="assoc.py"/>
<service name="assoc"/>
<reference target="name3" name="name"/>
<reference target="text3" name="value"/>
</component>
<component t:x="331" t:y="383" name="text3" t:title="text" t:color="orange1">
<t:implementation.python script="text.py"/>
<service name="text"/>
<property>jane</property>
</component>
<component t:x="218" t:y="195" name="name3" t:title="name" t:color="orange1">
<t:implementation.python script="name.py"/>
<component t:x="272" t:y="705" name="name9" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>near</property>
<property>3</property>
</component>
<component t:x="216" t:y="23" name="distance" t:title="distance" t:color="red1">
<t:implementation.python script="distance.py"/>
<service name="distance"/>
<reference target="location" name="location1"/>
<reference target="location2" name="location2"/>
<component t:x="272" t:y="389" name="name11" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>X</property>
</component>
<component t:x="473" t:y="84" name="location" t:title="location" t:color="red1">
<t:implementation.python script="location.py"/>
<service name="location"/>
<reference target="text2" name="user"/>
<component t:x="66" t:y="389" name="googlemap" t:title="google map" t:color="red1">
<t:implementation.python script="nuvem/gmap.py"/>
<service name="googlemap"/>
<reference target="list5" name="locations"/>
<reference name="s" t:visible="false">
<t:binding.http uri="http://maps.google.com/maps/api/staticmap"/>
</reference>
</component>
<component t:x="473" t:y="120" name="location2" t:title="location" t:color="red1">
<t:implementation.python script="location.py"/>
<service name="location"/>
<reference target="text" name="user"/>
<component t:x="763" t:y="168" name="reverse" t:title="reverse" t:color="yellow1">
<t:implementation.python script="nuvem/reverse.py"/>
<service name="reverse"/>
<reference target="get6" name="list"/>
</component>
<component t:x="965" t:y="221" name="get6" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb7" name="collection"/>
<reference target="user4" name="id"/>
</component>
<component t:x="765" t:y="279" name="reverse2" t:title="reverse" t:color="yellow1">
<t:implementation.python script="nuvem/reverse.py"/>
<service name="reverse"/>
<reference target="get5" name="list"/>
</component>
<component t:x="912" t:y="228" name="get5" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb6" name="collection"/>
<reference target="param6" name="id"/>
</component>
<component t:x="914" t:y="403" name="get7" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb8" name="collection"/>
<reference target="param7" name="id"/>
</component>
<component t:x="767" t:y="526" name="reverse3" t:title="reverse" t:color="yellow1">
<t:implementation.python script="nuvem/reverse.py"/>
<service name="reverse"/>
<reference target="get7" name="list"/>
</component>
<component t:x="693" t:y="165" name="first" t:title="first item" t:color="yellow1">
<t:implementation.python script="nuvem/first.py"/>
<service name="first"/>
<reference target="reverse" name="list"/>
</component>
<component t:x="697" t:y="283" name="first2" t:title="first item" t:color="yellow1">
<t:implementation.python script="nuvem/first.py"/>
<service name="first"/>
<reference target="reverse2" name="list"/>
</component>
<component t:x="698" t:y="407" name="first3" t:title="first item" t:color="yellow1">
<t:implementation.python script="nuvem/first.py"/>
<service name="first"/>
<reference target="reverse4" name="list"/>
</component>
<component t:x="694" t:y="526" name="first4" t:title="first item" t:color="yellow1">
<t:implementation.python script="nuvem/first.py"/>
<service name="first"/>
<reference target="reverse3" name="list"/>
</component>
<component t:x="768" t:y="410" name="reverse4" t:title="reverse" t:color="yellow1">
<t:implementation.python script="nuvem/reverse.py"/>
<service name="reverse"/>
<reference target="get8" name="list"/>
</component>
<component t:x="832" t:y="412" name="get8" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb9" name="collection"/>
<reference target="param8" name="id"/>
</component>
<component t:x="749" t:y="69" name="text" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>/components/map?friend1={friend1}&amp;friend2={friend2}&amp;friend3={friend3}</property>
</component>
<component t:x="652" t:y="41" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name5" name="name"/>
<reference target="format" name="value"/>
</component>
<component t:x="604" t:y="13" name="number" t:title="number" t:color="orange1">
<t:implementation.python script="nuvem/number.py"/>
<service name="number"/>
<property>5000</property>
</component>
</composite>

View file

@ -17,4 +17,47 @@
* specific language governing permissions and limitations
* under the License.
-->
<DIV id="page"/>
<DIV id="page">
<SPAN id="mapimg" class="img" style="position: absolute; top: 268px; left: 2px; ">
<IMG src="https://nearme.sca-store.com:8453/components/map"/>
</SPAN>
<SPAN id="h2" class="h2" style="position: absolute; top: 0px; left: 0px; ">
<H2>Nearme</H2>
</SPAN>
<SPAN id="friend3" class="entry" style="position: absolute; top: 224px; left: 1px; ">
<INPUT type="text" value="field" size="20"/>
</SPAN>
<SPAN id="friend3loc" class="text" style="position: absolute; top: 228px; left: 174px; ">
<SPAN>last seen...</SPAN>
</SPAN>
<SPAN id="text" class="text" style="position: absolute; top: 205px; left: 4px; ">
<SPAN>Friend 3:</SPAN>
</SPAN>
<SPAN id="friend2" class="entry" style="position: absolute; top: 173px; left: 2px; ">
<INPUT type="text" value="field" size="20"/>
</SPAN>
<SPAN id="text" class="text" style="position: absolute; top: 152px; left: 4px; ">
<SPAN>Friend 2:</SPAN>
</SPAN>
<SPAN id="friend2loc" class="text" style="position: absolute; top: 178px; left: 173px; ">
<SPAN>last seen...</SPAN>
</SPAN>
<SPAN id="friend1" class="entry" style="position: absolute; top: 122px; left: 2px; ">
<INPUT type="text" value="field" size="20"/>
</SPAN>
<SPAN id="text" class="text" style="position: absolute; top: 99px; left: 5px; ">
<SPAN>Friend 1:</SPAN>
</SPAN>
<SPAN id="friend1loc" class="text" style="position: absolute; top: 126px; left: 173px; ">
<SPAN>last seen...</SPAN>
</SPAN>
<SPAN id="text" class="text" style="position: absolute; top: 71px; left: 4px; ">
<SPAN>Last seen:</SPAN>
</SPAN>
<SPAN id="myloc" class="text" style="position: absolute; top: 69px; left: 173px; ">
<SPAN>updating...</SPAN>
</SPAN>
<SPAN id="me" class="section" style="position: absolute; top: 33px; left: 1px; ">
<SPAN>me</SPAN>
</SPAN>
</DIV>

View file

@ -27,10 +27,10 @@
<reference name="n"/>
<reference name="content"/>
</component>
<service name="assoc" promote="assoc"/>
<component t:x="207" t:y="48" name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<service name="pair" promote="pair"/>
<component t:x="207" t:y="48" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference name="name"/>
<reference name="value"/>
</component>

View file

@ -0,0 +1,99 @@
<?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://docs.oasis-open.org/ns/opencsa/sca/200912" xmlns:t="http://tuscany.apache.org/xmlns/sca/1.1" targetNamespace="http://testdb" name="testdb">
<component t:x="405" t:y="143" name="text3" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>testkey</property>
</component>
<component t:x="177" t:y="36" name="text" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>testkey</property>
</component>
<component t:x="102" t:y="35" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="103" t:y="91" name="text2" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>testvalue</property>
</component>
<component t:x="105" t:y="8" name="filedb" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<service name="put" promote="put"/>
<component t:x="59" t:y="63" name="put" t:title="put" t:color="green1">
<t:implementation.python script="nuvem/put.py"/>
<service name="put"/>
<reference target="filedb" name="collection"/>
<reference target="list" name="id"/>
<reference target="text2" name="value"/>
</component>
<component t:x="311" t:y="186" name="list2" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text3" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<service name="get" promote="get"/>
<component t:x="300" t:y="61" name="get" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference target="filedb3" name="collection"/>
<reference target="list2" name="id"/>
</component>
<component t:x="311" t:y="155" name="filedb3" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<service name="delete" promote="delete"/>
<component t:x="58" t:y="221" name="delete" t:title="delete" t:color="green1">
<t:implementation.python script="nuvem/delete.py"/>
<service name="delete"/>
<reference target="filedb2" name="collection"/>
<reference target="list3" name="id"/>
</component>
<component t:x="113" t:y="223" name="filedb2" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component t:x="111" t:y="243" name="list3" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text4" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="187" t:y="249" name="text4" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>testkey</property>
</component>
</composite>

View file

@ -24,17 +24,17 @@
<service name="page" t:visible="false">
<t:binding.http uri="page"/>
</service>
<reference target="assoc" name="content"/>
<reference target="pair" name="content"/>
</component>
<service name="testbutton1" promote="testbutton1"/>
<component t:x="42" t:y="127" name="testbutton1" t:title="on {compname} click" t:color="green1">
<t:implementation.python script="nuvem/button.py"/>
<service name="button" t:visible="false"/>
<reference target="assoc5" name="content"/>
<component t:x="42" t:y="127" name="testbutton1" t:title="on {compname} widget" t:color="green1">
<t:implementation.python script="nuvem/widget.py"/>
<service name="widget" t:visible="false"/>
<reference target="pair5" name="content"/>
</component>
<component t:x="167" t:y="12" name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="167" t:y="12" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name" name="name"/>
<reference target="text" name="value"/>
</component>
@ -54,14 +54,14 @@
<property>status</property>
</component>
<service name="testbutton2" promote="testbutton2"/>
<component t:x="409" t:y="9" name="testbutton2" t:title="on {compname} click" t:color="green1">
<t:implementation.python script="nuvem/button.py"/>
<service name="button" t:visible="false"/>
<reference target="assoc3" name="content"/>
<component t:x="409" t:y="9" name="testbutton2" t:title="on {compname} widget" t:color="green1">
<t:implementation.python script="nuvem/widget.py"/>
<service name="widget" t:visible="false"/>
<reference target="pair3" name="content"/>
</component>
<component t:x="591" t:y="130" name="assoc3" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="591" t:y="130" name="pair3" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name3" name="name"/>
<reference target="text3" name="value"/>
</component>
@ -70,17 +70,12 @@
<service name="name"/>
<property>status</property>
</component>
<component t:x="269" t:y="132" name="assoc2" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="269" t:y="132" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name2" name="name"/>
<reference target="text2" name="value"/>
</component>
<component t:x="364" t:y="221" name="name4" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>testfield</property>
</component>
<component t:x="319" t:y="204" name="name5" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
@ -91,30 +86,24 @@
<service name="name"/>
<property>data</property>
</component>
<component t:x="245" t:y="167" name="list" t:title="make list" t:color="yellow1">
<component t:x="245" t:y="167" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="assoc2" name="item" t:clonable="true"/>
<reference target="assoc4" name="item" t:clonable="true"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference target="pair4" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="190" t:y="127" name="assoc5" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="190" t:y="127" name="pair5" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name6" name="name"/>
<reference target="list" name="value"/>
</component>
<component t:x="869" t:y="373" name="find" t:title="find by name" t:color="yellow1">
<t:implementation.python script="nuvem/find.py"/>
<service name="find"/>
<reference target="name4" name="name"/>
<reference target="params" name="assoc"/>
</component>
<component t:x="321" t:y="256" name="assoc4" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="321" t:y="256" name="pair4" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name5" name="name"/>
<reference target="find" name="value"/>
<reference target="param" name="value"/>
</component>
<component t:x="373" t:y="207" name="text2" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
@ -132,16 +121,11 @@
<service name="location" t:visible="false">
<t:binding.http uri="location"/>
</service>
<reference target="assoc6" name="content"/>
<reference target="pair6" name="content"/>
</component>
<component t:x="454" t:y="335" name="params" t:title="?params" t:color="green1">
<t:implementation.python script="nuvem/params.py"/>
<service name="params"/>
<property name="query"/>
</component>
<component t:x="756" t:y="287" name="assoc6" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="756" t:y="287" name="pair6" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name7" name="name"/>
<reference target="params2" name="value"/>
</component>
@ -155,9 +139,9 @@
<service name="params"/>
<property name="query" t:visible="false"/>
</component>
<component t:x="783" t:y="255" name="assoc8" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="783" t:y="255" name="pair8" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name9" name="name"/>
<reference target="text4" name="value"/>
</component>
@ -171,11 +155,11 @@
<service name="number"/>
<property>3000</property>
</component>
<component t:x="675" t:y="146" name="assoc7" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="675" t:y="146" name="pair7" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name8" name="name"/>
<reference target="assoc8" name="value"/>
<reference target="pair8" name="value"/>
</component>
<service name="every" promote="every"/>
<component t:x="601" t:y="103" name="every" t:title="every n milliseconds" t:color="green1">
@ -184,7 +168,7 @@
<t:binding.http uri="every"/>
</service>
<reference target="number" name="n"/>
<reference target="assoc7" name="content"/>
<reference target="pair7" name="content"/>
</component>
<component t:x="733" t:y="164" name="name8" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
@ -196,4 +180,15 @@
<service name="name"/>
<property>status</property>
</component>
<component t:x="360" t:y="250" name="name4" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>testfield</property>
</component>
<component t:x="301" t:y="247" name="param" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference target="name4" name="name"/>
<property name="query" t:visible="false"/>
</component>
</composite>

View file

@ -0,0 +1,193 @@
<?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://docs.oasis-open.org/ns/opencsa/sca/200912" xmlns:t="http://tuscany.apache.org/xmlns/sca/1.1" targetNamespace="http://testsearch" name="testsearch">
<service name="googlesearch" promote="googlesearch"/>
<component t:x="72" t:y="31" name="googlesearch" t:title="google search" t:color="red1">
<t:implementation.python script="nuvem/gsearch.py"/>
<service name="googlesearch"/>
<reference target="text" name="query"/>
<reference name="s" t:visible="false">
<t:binding.http uri="http://ajax.googleapis.com/ajax/services/search/web"/>
</reference>
</component>
<component t:x="173" t:y="31" name="text" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>apache+tuscany</property>
</component>
<service name="weather" promote="weather"/>
<component t:x="76" t:y="95" name="weather" t:title="weather" t:color="red1">
<t:implementation.python script="nuvem/gweather.py"/>
<service name="weather"/>
<reference target="number" name="zip"/>
<reference name="ws" t:visible="false">
<t:binding.http uri="http://www.google.com/ig/api"/>
</reference>
</component>
<component t:x="141" t:y="95" name="number" t:title="number" t:color="orange1">
<t:implementation.python script="nuvem/number.py"/>
<service name="number"/>
<property>94070</property>
</component>
<service name="weather2" promote="weather2"/>
<component t:x="76" t:y="162" name="weather2" t:title="weather" t:color="red1">
<t:implementation.python script="nuvem/gweather.py"/>
<service name="weather"/>
<reference target="text2" name="zip"/>
<reference name="ws" t:visible="false">
<t:binding.http uri="http://www.google.com/ig/api"/>
</reference>
</component>
<component t:x="141" t:y="162" name="text2" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>94070</property>
</component>
<service name="get" promote="get"/>
<component t:x="77" t:y="234" name="get" t:title="http get" t:color="green1">
<implementation.cpp path="lib/http" library="libhttpget"/>
<service name="get"/>
<reference target="text3" name="url"/>
</component>
<component t:x="141" t:y="234" name="text3" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>http://maps.google.com/maps/api/staticmap?center=Brooklyn+Bridge,New+York,NY&amp;zoom=14&amp;size=512x512&amp;maptype=roadmap%20&amp;markers=color:blue|label:S|40.702147,-74.015794&amp;markers=color:green|label:G|40.711614,-74.012318%20&amp;markers=color:red|color:red|label:C|40.718217,-73.998284&amp;sensor=false</property>
</component>
<service name="googlemap" promote="googlemap"/>
<component t:x="77" t:y="307" name="googlemap" t:title="google map" t:color="red1">
<t:implementation.python script="nuvem/gmap.py"/>
<service name="googlemap"/>
<reference target="list2" name="locations"/>
<reference name="s" t:visible="false">
<t:binding.http uri="http://maps.google.com/maps/api/staticmap"/>
</reference>
</component>
<service name="googlemap2" promote="googlemap2"/>
<component t:x="79" t:y="530" name="googlemap2" t:title="google map" t:color="red1">
<t:implementation.python script="nuvem/gmap.py"/>
<service name="googlemap"/>
<reference target="list3" name="locations"/>
<reference name="s" t:visible="false">
<t:binding.http uri="http://maps.google.com/maps/api/staticmap"/>
</reference>
</component>
<component t:x="218" t:y="529" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name2" name="name"/>
<reference target="pair4" name="value"/>
</component>
<component t:x="256" t:y="530" name="name2" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>A</property>
</component>
<component t:x="219" t:y="596" name="pair3" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name3" name="name"/>
<reference target="pair5" name="value"/>
</component>
<component t:x="254" t:y="594" name="name3" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>B</property>
</component>
<component t:x="300" t:y="391" name="number3" t:title="number" t:color="orange1">
<t:implementation.python script="nuvem/number.py"/>
<service name="number"/>
<property>-122.260526</property>
</component>
<component t:x="260" t:y="553" name="pair4" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="text7" name="name"/>
<reference target="text5" name="value"/>
</component>
<component t:x="294" t:y="558" name="text7" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>yellow</property>
</component>
<component t:x="254" t:y="658" name="pair5" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="text8" name="name"/>
<reference target="text6" name="value"/>
</component>
<component t:x="303" t:y="659" name="text8" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>green</property>
</component>
<component t:x="294" t:y="586" name="text5" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>San+Francisco,+CA</property>
</component>
<component t:x="294" t:y="686" name="text6" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>San+Carlos,+CA</property>
</component>
<component t:x="166" t:y="530" name="list3" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference target="pair3" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="252" t:y="307" name="name" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>A</property>
</component>
<component t:x="300" t:y="335" name="text4" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>green</property>
</component>
<component t:x="212" t:y="307" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name" name="name"/>
<reference target="list" name="value"/>
</component>
<component t:x="252" t:y="335" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text4" name="item" t:clonable="true"/>
<reference target="number2" name="item" t:clonable="true"/>
<reference target="number3" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="300" t:y="363" name="number2" t:title="number" t:color="orange1">
<t:implementation.python script="nuvem/number.py"/>
<service name="number"/>
<property>37.507156</property>
</component>
<component t:x="164" t:y="307" name="list2" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="pair" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
</composite>

View file

@ -26,16 +26,9 @@
</service>
<reference target="me360" name="content"/>
</component>
<component t:x="184" t:y="58" name="list3" t:title="make list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="assoc" name="item" t:clonable="true"/>
<reference target="assoc2" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="262" t:y="152" name="assoc2" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="262" t:y="152" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name2" name="name"/>
<reference target="twprofile" name="value"/>
</component>
@ -44,15 +37,9 @@
<service name="name"/>
<property>twprofile</property>
</component>
<component t:x="256" t:y="52" name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<reference target="name" name="name"/>
<reference target="fbprofile" name="value"/>
</component>
<component t:x="128" t:y="12" name="me360" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="128" t:y="12" name="me360" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name3" name="name"/>
<reference target="list3" name="value"/>
</component>
@ -88,24 +75,11 @@
<t:binding.http uri="http://api.twitter.com/1/statuses/followers.json"/>
</reference>
</component>
<component t:x="473" t:y="71" name="fbprofile" t:title="facebook profile" t:color="blue1">
<t:implementation.python script="nuvem/fbprofile.py"/>
<service name="fbprofile"/>
<reference target="text" name="id"/>
<reference name="fb" t:visible="false">
<t:binding.http uri="https://graph.facebook.com"/>
</reference>
</component>
<component t:x="337" t:y="15" name="name3" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>me360</property>
</component>
<component t:x="473" t:y="43" name="name" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>fbprofile</property>
</component>
<component t:x="589" t:y="71" name="text" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
@ -134,4 +108,30 @@
<service name="text"/>
<property>jsdelfino</property>
</component>
<component t:x="284" t:y="32" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name" name="name"/>
<reference target="fbprofile" name="value"/>
</component>
<component t:x="236" t:y="32" name="list3" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="pair" name="item" t:clonable="true"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="324" t:y="32" name="name" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>fbprofile</property>
</component>
<component t:x="324" t:y="60" name="fbprofile" t:title="facebook profile" t:color="blue1">
<t:implementation.python script="nuvem/fbprofile.py"/>
<service name="fbprofile"/>
<reference target="text" name="id"/>
<reference name="fb" t:visible="false">
<t:binding.http uri="https://graph.facebook.com"/>
</reference>
</component>
</composite>

View file

@ -109,7 +109,7 @@
<service name="text"/>
<property>abcxdefxghi</property>
</component>
<component t:x="583" t:y="60" name="list2" t:title="make list" t:color="yellow1">
<component t:x="583" t:y="60" name="list2" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text7" name="item" t:clonable="true"/>
@ -145,7 +145,7 @@
<service name="text"/>
<property>The {0} brown {1}</property>
</component>
<component t:x="369" t:y="238" name="list" t:title="make list" t:color="yellow1">
<component t:x="369" t:y="238" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text15" name="item" t:clonable="true"/>
@ -167,22 +167,22 @@
<service name="text"/>
<property>The {a} brown {b}</property>
</component>
<component t:x="603" t:y="239" name="list3" t:title="make list" t:color="yellow1">
<component t:x="603" t:y="239" name="list3" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="assoc" name="item" t:clonable="true"/>
<reference target="assoc2" name="item" t:clonable="true"/>
<reference target="pair" name="item" t:clonable="true"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="675" t:y="243" name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="675" t:y="243" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name" name="name"/>
<reference target="text17" name="value"/>
</component>
<component t:x="673" t:y="287" name="assoc2" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="673" t:y="287" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name2" name="name"/>
<reference target="text18" name="value"/>
</component>

View file

@ -39,7 +39,7 @@
<t:implementation.python script="nuvem/find.py"/>
<service name="find"/>
<reference target="name3" name="name"/>
<reference target="list2" name="assoc"/>
<reference target="list2" name="pair"/>
</component>
<component t:x="283" t:y="351" name="name3" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
@ -187,7 +187,7 @@
<service name="valueof"/>
<property>nb</property>
</component>
<component t:x="167" t:y="13" name="list7" t:title="make list" t:color="yellow1">
<component t:x="167" t:y="13" name="list7" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="number2" name="item" t:clonable="true"/>
@ -209,7 +209,7 @@
<t:implementation.python script="nuvem/nothing.py"/>
<service name="nothing"/>
</component>
<component t:x="488" t:y="11" name="list" t:title="make list" t:color="yellow1">
<component t:x="488" t:y="11" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="number" name="item" t:clonable="true"/>
@ -226,23 +226,23 @@
<service name="number"/>
<property>34</property>
</component>
<component t:x="902" t:y="56" name="assoc2" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="902" t:y="56" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name4" name="name"/>
<reference target="text3" name="value"/>
</component>
<component t:x="896" t:y="137" name="assoc3" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="896" t:y="137" name="pair3" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name5" name="name"/>
<reference target="text4" name="value"/>
</component>
<component t:x="823" t:y="49" name="list2" t:title="make list" t:color="yellow1">
<component t:x="823" t:y="49" name="list2" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="assoc2" name="item" t:clonable="true"/>
<reference target="assoc3" name="item" t:clonable="true"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference target="pair3" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="252" t:y="352" name="reverse" t:title="reverse" t:color="yellow1">

View file

@ -24,11 +24,11 @@
<service name="page" t:visible="false">
<t:binding.http uri="page"/>
</service>
<reference target="assoc8" name="content"/>
<reference target="pair8" name="content"/>
</component>
<component t:x="516" t:y="121" name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="516" t:y="121" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name" name="name"/>
<reference target="text" name="value"/>
</component>
@ -82,27 +82,27 @@
<service name="text"/>
<property>http://tuscany.apache.org/images/TuscanyLogo.jpg</property>
</component>
<component t:x="405" t:y="268" name="assoc3" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="405" t:y="268" name="pair3" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name3" name="name"/>
<reference target="text3" name="value"/>
</component>
<component t:x="407" t:y="355" name="assoc5" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="407" t:y="355" name="pair5" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name7" name="name"/>
<reference target="text5" name="value"/>
</component>
<component t:x="409" t:y="178" name="assoc6" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="409" t:y="178" name="pair6" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name2" name="name"/>
<reference target="text2" name="value"/>
</component>
<component t:x="407" t:y="445" name="assoc2" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="407" t:y="445" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name4" name="name"/>
<reference target="text4" name="value"/>
</component>
@ -126,15 +126,15 @@
<service name="name"/>
<property>test</property>
</component>
<component t:x="460" t:y="660" name="assoc4" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="460" t:y="660" name="pair4" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name5" name="name"/>
<reference target="text6" name="value"/>
</component>
<component t:x="460" t:y="569" name="assoc9" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="460" t:y="569" name="pair9" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name9" name="name"/>
<reference target="text8" name="value"/>
</component>
@ -148,29 +148,30 @@
<service name="text"/>
<property>test text</property>
</component>
<component t:x="458" t:y="128" name="assoc7" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="458" t:y="128" name="pair7" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name6" name="name"/>
<reference target="text7" name="value"/>
</component>
<component t:x="330" t:y="0" name="assoc8" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="330" t:y="0" name="pair8" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name8" name="name"/>
<reference target="list" name="value"/>
</component>
<component t:x="385" t:y="40" name="list" t:title="make list" t:color="yellow1">
<component t:x="385" t:y="40" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="assoc" name="item" t:clonable="true"/>
<reference target="assoc7" name="item" t:clonable="true"/>
<reference target="assoc6" name="item" t:clonable="true"/>
<reference target="assoc3" name="item" t:clonable="true"/>
<reference target="assoc5" name="item" t:clonable="true"/>
<reference target="assoc2" name="item" t:clonable="true"/>
<reference target="assoc9" name="item" t:clonable="true"/>
<reference target="assoc4" name="item" t:clonable="true"/>
<reference target="pair" name="item" t:clonable="true"/>
<reference target="pair7" name="item" t:clonable="true"/>
<reference target="pair6" name="item" t:clonable="true"/>
<reference target="pair3" name="item" t:clonable="true"/>
<reference target="pair5" name="item" t:clonable="true"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference target="pair9" name="item" t:clonable="true"/>
<reference target="pair4" name="item" t:clonable="true"/>
<reference target="pair10" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="513" t:y="520" name="text4" t:title="text" t:color="orange1">
@ -178,4 +179,31 @@
<service name="text"/>
<property>http://tuscany.apache.org</property>
</component>
<component t:x="515" t:y="541" name="name10" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>testpath1</property>
</component>
<component t:x="512" t:y="568" name="pair11" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name11" name="name"/>
<reference target="text9" name="value"/>
</component>
<component t:x="571" t:y="567" name="name11" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>testpath2</property>
</component>
<component t:x="567" t:y="596" name="text9" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
<service name="text"/>
<property>test path</property>
</component>
<component t:x="457" t:y="540" name="pair10" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name10" name="name"/>
<reference target="pair11" name="value"/>
</component>
</composite>

View file

@ -55,4 +55,7 @@
<SPAN id="testimg" class="img" style="position: absolute; top: 12px; left: 252px; ">
<IMG src="/public/img.png"/>
</SPAN>
<SPAN id="testpath1.testpath2" class="text" style="position: absolute; top: 282px; left: 17px; ">
<SPAN>text</SPAN>
</SPAN>
</DIV>

View file

@ -26,7 +26,7 @@
<component t:x="74" t:y="10" name="name" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>testtable1</property>
<property>testlist1</property>
</component>
<service name="page" promote="page"/>
<component t:x="109" t:y="0" name="page" t:title="when page opens" t:color="green1">
@ -36,27 +36,27 @@
</service>
<reference target="list" name="content"/>
</component>
<component t:x="305" t:y="202" name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="305" t:y="202" name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name" name="name"/>
<reference target="text" name="value"/>
</component>
<component t:x="355" t:y="129" name="name2" t:title="name" t:color="orange1">
<t:implementation.python script="nuvem/name.py"/>
<service name="name"/>
<property>testtable2</property>
<property>testlist2</property>
</component>
<component t:x="355" t:y="177" name="list2" t:title="make list" t:color="yellow1">
<component t:x="355" t:y="177" name="list2" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="assoc3" name="item" t:clonable="true"/>
<reference target="assoc4" name="item" t:clonable="true"/>
<reference target="pair3" name="item" t:clonable="true"/>
<reference target="pair4" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="435" t:y="165" name="assoc3" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="435" t:y="165" name="pair3" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name3" name="name"/>
<reference target="number" name="value"/>
</component>
@ -70,9 +70,9 @@
<service name="number"/>
<property>1</property>
</component>
<component t:x="435" t:y="256" name="assoc4" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="435" t:y="256" name="pair4" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name4" name="name"/>
<reference target="number2" name="value"/>
</component>
@ -81,9 +81,9 @@
<service name="number"/>
<property>2</property>
</component>
<component t:x="303" t:y="126" name="assoc2" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="303" t:y="126" name="pair2" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name2" name="name"/>
<reference target="list2" name="value"/>
</component>
@ -92,19 +92,19 @@
<service name="name"/>
<property>b</property>
</component>
<component t:x="230" t:y="38" name="list" t:title="make list" t:color="yellow1">
<component t:x="230" t:y="38" name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="assoc" name="item" t:clonable="true"/>
<reference target="assoc2" name="item" t:clonable="true"/>
<reference target="assoc5" name="item" t:clonable="true"/>
<reference target="assoc6" name="item" t:clonable="true"/>
<reference target="assoc7" name="item" t:clonable="true"/>
<reference target="pair" name="item" t:clonable="true"/>
<reference target="pair2" name="item" t:clonable="true"/>
<reference target="pair5" name="item" t:clonable="true"/>
<reference target="pair6" name="item" t:clonable="true"/>
<reference target="pair7" name="item" t:clonable="true"/>
<reference name="item" t:clonable="true"/>
</component>
<component t:x="312" t:y="294" name="assoc5" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="312" t:y="294" name="pair5" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name5" name="name"/>
<reference target="text2" name="value"/>
</component>
@ -118,9 +118,9 @@
<service name="text"/>
<property>&lt;b&gt;test bold text&lt;/b&gt;</property>
</component>
<component t:x="315" t:y="362" name="assoc6" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="315" t:y="362" name="pair6" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name6" name="name"/>
<reference target="list3" name="value"/>
</component>
@ -134,7 +134,7 @@
<service name="text"/>
<property>http://www.apache.org/</property>
</component>
<component t:x="369" t:y="387" name="list3" t:title="make list" t:color="yellow1">
<component t:x="369" t:y="387" name="list3" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference target="text3" name="item" t:clonable="true"/>
@ -146,9 +146,9 @@
<service name="text"/>
<property>Apache</property>
</component>
<component t:x="319" t:y="478" name="assoc7" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<component t:x="319" t:y="478" name="pair7" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference target="name7" name="name"/>
<reference target="text5" name="value"/>
</component>

View file

@ -0,0 +1 @@
((entry (title "An empty test app") (id "test")) (entry (title "Test values and lists") (id "testvalues")) (entry (title "Test social components") (id "testsocial")) (entry (title "Test URL components") (id "testurl")) (entry (title "Test logic components") (id "testlogic")) (entry (title "Test text processing components") (id "testtext")) (entry (title "Test HTTP components") (id "testhttp")) (entry (title "Test widgets") (id "testwidgets")) (entry (title "Test more widgets") (id "testwidgets2")) (entry (title "Test event components") (id "testevents")) (entry (title "Test search components") (id "testsearch")) (entry (title "Test database components") (id "testdb")) (entry (title "An app that shows my social profiles") (id "me360")) (entry (title "An app that shows friends near me") (id "nearme")) (entry (title "An app that returns somebody's Buzz profile") (id "buzzprofile")))

View file

@ -0,0 +1 @@
((entry (title "An empty test app") (id "test")) (entry (title "Test values and lists") (id "testvalues")) (entry (title "Test social components") (id "testsocial")) (entry (title "Test URL components") (id "testurl")) (entry (title "Test logic components") (id "testlogic")) (entry (title "Test text processing components") (id "testtext")) (entry (title "Test HTTP components") (id "testhttp")) (entry (title "Test widgets") (id "testwidgets")) (entry (title "Test more widgets") (id "testwidgets2")) (entry (title "Test event components") (id "testevents")) (entry (title "Test search components") (id "testsearch")) (entry (title "Test database components") (id "testdb")) (entry (title "An app that shows my social profiles") (id "me360")) (entry (title "An app that shows friends near me") (id "nearme")) (entry (title "An app that returns somebody's Buzz profile") (id "buzzprofile")))

View file

@ -1 +1 @@
((entry (title "An empty test app") (id "test")) (entry (title "Test values and lists") (id "testvalues")) (entry (title "Test social components") (id "testsocial")) (entry (title "Test URL components") (id "testurl")) (entry (title "Test logic components") (id "testlogic")) (entry (title "Test text processing components") (id "testtext")) (entry (title "Test HTTP components") (id "testhttp")) (entry (title "Test widgets") (id "testwidgets")) (entry (title "Test more widgets") (id "testwidgets2")) (entry (title "Test event components") (id "testevents")) (entry (title "An app that shows my social profiles") (id "me360")) (entry (title "An app that shows friends near me") (id "nearme")) (entry (title "An app that returns somebody's Buzz profile") (id "buzzprofile")))
((entry (title "An empty test app") (id "test")) (entry (title "Test values and lists") (id "testvalues")) (entry (title "Test social components") (id "testsocial")) (entry (title "Test URL components") (id "testurl")) (entry (title "Test logic components") (id "testlogic")) (entry (title "Test text processing components") (id "testtext")) (entry (title "Test HTTP components") (id "testhttp")) (entry (title "Test widgets") (id "testwidgets")) (entry (title "Test more widgets") (id "testwidgets2")) (entry (title "Test event components") (id "testevents")) (entry (title "Test search components") (id "testsearch")) (entry (title "Test database components") (id "testdb")) (entry (title "An app that shows my social profiles") (id "me360")) (entry (title "An app that shows friends near me") (id "nearme")) (entry (title "An app that returns somebody's Buzz profile") (id "buzzprofile")))

View file

@ -1 +1 @@
((entry (title "An empty test app") (id "test")) (entry (title "Test values and lists") (id "testvalues")) (entry (title "Test social components") (id "testsocial")) (entry (title "Test URL components") (id "testurl")) (entry (title "Test logic components") (id "testlogic")) (entry (title "Test text processing components") (id "testtext")) (entry (title "Test HTTP components") (id "testhttp")) (entry (title "Test widgets") (id "testwidgets")) (entry (title "Test more widgets") (id "testwidgets2")) (entry (title "Test event components") (id "testevents")) (entry (title "An app that shows my social profiles") (id "me360")) (entry (title "An app that shows friends near me") (id "nearme")) (entry (title "An app that returns somebody's Buzz profile") (id "buzzprofile")))
((entry (title "An empty test app") (id "test")) (entry (title "Test values and lists") (id "testvalues")) (entry (title "Test social components") (id "testsocial")) (entry (title "Test URL components") (id "testurl")) (entry (title "Test logic components") (id "testlogic")) (entry (title "Test text processing components") (id "testtext")) (entry (title "Test HTTP components") (id "testhttp")) (entry (title "Test widgets") (id "testwidgets")) (entry (title "Test more widgets") (id "testwidgets2")) (entry (title "Test event components") (id "testevents")) (entry (title "Test search components") (id "testsearch")) (entry (title "Test database components") (id "testdb")) (entry (title "An app that shows my social profiles") (id "me360")) (entry (title "An app that shows friends near me") (id "nearme")) (entry (title "An app that returns somebody's Buzz profile") (id "buzzprofile")))

View file

@ -172,6 +172,26 @@
</service>
</component>
<component name="AppDataFileCache">
<implementation.cpp path="../../components/cache" library="libdatacache"/>
<service name="AppDataFileCache">
<t:binding.http uri="appdatafilecache"/>
</service>
<reference name="l1reader" target="Memcache"/>
<reference name="l1writer" target="Memcache"/>
<reference name="l2reader" target="AppDataFileDB"/>
<reference name="l2writer" target="AppDataFileDB"/>
</component>
<component name="AppDataFileDB">
<implementation.cpp path="../../components/filedb" library="libfiledb"/>
<property name="dbname">tmp/appdata/filedb</property>
<property name="format">scheme</property>
<service name="AppDataFileDB">
<t:binding.http uri="appdatafiledb"/>
</service>
</component>
<component name="Memcache">
<implementation.cpp path="../../components/cache" library="libmemcache"/>
<service name="Memcache">

View file

@ -0,0 +1,84 @@
<?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://docs.oasis-open.org/ns/opencsa/sca/200912"
xmlns:t="http://tuscany.apache.org/xmlns/sca/1.1"
targetNamespace="http://database"
name="palette">
<service name="filedb" promote="filedb"/>
<service name="nosqldb" promote="nosqldb"/>
<service name="sqldb" promote="sqldb"/>
<service name="get" promote="get"/>
<service name="post" promote="post"/>
<service name="put" promote="put"/>
<service name="delete" promote="delete"/>
<component name="filedb" t:title="File database" t:color="green1">
<t:implementation.python script="nuvem/filedb.py"/>
<service name="filedb"/>
<reference name="db" target="AppDataFileCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component name="nosqldb" t:title="Indexed database" t:color="green1">
<t:implementation.python script="nuvem/nosqldb.py"/>
<service name="nosqldb"/>
<reference name="db" target="AppDataNoSQLCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component name="sqldb" t:title="SQL database" t:color="green1">
<t:implementation.python script="nuvem/sqldb.py"/>
<service name="sqldb"/>
<reference name="db" target="AppDataSQLCache" t:visible="false"/>
<property name="host" t:visible="false"/>
</component>
<component name="get" t:title="get" t:color="green1">
<t:implementation.python script="nuvem/get.py"/>
<service name="get"/>
<reference name="collection"/>
<reference name="id"/>
</component>
<component name="post" t:title="post" t:color="green1">
<t:implementation.python script="nuvem/post.py"/>
<service name="post"/>
<reference name="collection"/>
<reference name="id"/>
<reference name="value"/>
</component>
<component name="put" t:title="put" t:color="green1">
<t:implementation.python script="nuvem/put.py"/>
<service name="put"/>
<reference name="collection"/>
<reference name="id"/>
<reference name="value"/>
</component>
<component name="delete" t:title="delete" t:color="green1">
<t:implementation.python script="nuvem/delete.py"/>
<service name="delete"/>
<reference name="collection"/>
<reference name="id"/>
</component>
</composite>

View file

@ -23,7 +23,7 @@
name="palette">
<service name="page" promote="page"/>
<service name="button" promote="button"/>
<service name="widget" promote="widget"/>
<service name="every" promote="every"/>
<service name="location" promote="location"/>
@ -35,9 +35,9 @@
<reference name="content"/>
</component>
<component name="button" t:title="on {compname} click" t:color="green1">
<t:implementation.python script="nuvem/button.py"/>
<service name="button" t:visible="false"/>
<component name="widget" t:title="on {compname} widget" t:color="green1">
<t:implementation.python script="nuvem/widget.py"/>
<service name="widget" t:visible="false"/>
<reference name="content"/>
</component>

View file

@ -25,6 +25,7 @@
<service name="host" promote="host"/>
<service name="path" promote="path"/>
<service name="params" promote="params"/>
<service name="param" promote="param"/>
<service name="user" promote="user"/>
<service name="email" promote="email"/>
<service name="get" promote="get"/>
@ -50,6 +51,13 @@
<property name="query" t:visible="false"></property>
</component>
<component name="param" t:title="?param" t:color="green1">
<t:implementation.python script="nuvem/param.py"/>
<service name="param"/>
<reference name="name"/>
<property name="query" t:visible="false"></property>
</component>
<component name="user" t:title="user" t:color="green1">
<t:implementation.python script="nuvem/user.py"/>
<service name="user"/>

View file

@ -22,6 +22,7 @@
targetNamespace="http://list"
name="palette">
<service name="pair" promote="pair"/>
<service name="list" promote="list"/>
<service name="first" promote="first"/>
<service name="rest" promote="rest"/>
@ -31,7 +32,14 @@
<service name="find" promote="find"/>
<service name="range" promote="range"/>
<component name="list" t:title="make list" t:color="yellow1">
<component name="pair" t:title="pair" t:color="yellow1">
<t:implementation.python script="nuvem/pair.py"/>
<service name="pair"/>
<reference name="name"/>
<reference name="value"/>
</component>
<component name="list" t:title="list" t:color="yellow1">
<t:implementation.python script="nuvem/list_.py"/>
<service name="list"/>
<reference name="item" t:clonable="true"/>

View file

@ -25,14 +25,17 @@
<service name="googlesearch" promote="googlesearch"/>
<service name="yahoosearch" promote="yahoosearch"/>
<service name="bingsearch" promote="bingsearch"/>
<service name="geomap" promote="geomap"/>
<service name="googlemap" promote="googlemap"/>
<service name="weather" promote="weather"/>
<service name="traffic" promote="traffic"/>
<component name="googlesearch" t:title="google search **" t:color="red1">
<t:implementation.python script="nuvem/googlesearch.py"/>
<component name="googlesearch" t:title="google search" t:color="red1">
<t:implementation.python script="nuvem/gsearch.py"/>
<service name="googlesearch"/>
<reference name="query"/>
<reference name="s" t:visible="false">
<t:binding.http uri="http://ajax.googleapis.com/ajax/services/search/web"/>
</reference>
</component>
<component name="yahoosearch" t:title="yahoo search **" t:color="red1">
@ -47,16 +50,22 @@
<reference name="query"/>
</component>
<component name="geomap" t:title="map **" t:color="red1">
<t:implementation.python script="nuvem/geomap.py"/>
<service name="geomap"/>
<reference name="location"/>
<component name="googlemap" t:title="google map" t:color="red1">
<t:implementation.python script="nuvem/gmap.py"/>
<service name="googlemap"/>
<reference name="locations"/>
<reference name="s" t:visible="false">
<t:binding.http uri="http://maps.google.com/maps/api/staticmap"/>
</reference>
</component>
<component name="weather" t:title="weather **" t:color="red1">
<t:implementation.python script="nuvem/weather.py"/>
<component name="weather" t:title="weather" t:color="red1">
<t:implementation.python script="nuvem/gweather.py"/>
<service name="weather"/>
<reference name="location"/>
<reference name="zip"/>
<reference name="ws" t:visible="false">
<t:binding.http uri="http://www.google.com/ig/api"/>
</reference>
</component>
<component name="traffic" t:title="traffic **" t:color="red1">

View file

@ -26,10 +26,10 @@
<service name="number" promote="number"/>
<service name="name" promote="name"/>
<service name="valueof" promote="valueof"/>
<service name="assoc" promote="assoc"/>
<service name="nothing" promote="nothing"/>
<service name="true" promote="true"/>
<service name="false" promote="false"/>
<service name="now" promote="now"/>
<component name="text" t:title="text" t:color="orange1">
<t:implementation.python script="nuvem/text.py"/>
@ -55,13 +55,6 @@
<property name="name">name</property>
</component>
<component name="assoc" t:title="assoc" t:color="orange1">
<t:implementation.python script="nuvem/assoc.py"/>
<service name="assoc"/>
<reference name="name"/>
<reference name="value"/>
</component>
<component name="nothing" t:title="nothing" t:color="orange1">
<t:implementation.python script="nuvem/nothing.py"/>
<service name="nothing"/>
@ -77,4 +70,9 @@
<service name="false"/>
</component>
<component name="now" t:title="now" t:color="orange1">
<t:implementation.python script="nuvem/now.py"/>
<service name="now"/>
</component>
</composite>

View file

@ -1 +1 @@
((entry (title "An empty test app") (id "test")) (entry (title "Test values and lists") (id "testvalues")) (entry (title "Test social components") (id "testsocial")) (entry (title "Test URL components") (id "testurl")) (entry (title "Test logic components") (id "testlogic")) (entry (title "Test text processing components") (id "testtext")) (entry (title "Test HTTP components") (id "testhttp")) (entry (title "Test widgets") (id "testwidgets")) (entry (title "Test more widgets") (id "testwidgets2")) (entry (title "Test event components") (id "testevents")))
((entry (title "An empty test app") (id "test")) (entry (title "Test values and lists") (id "testvalues")) (entry (title "Test social components") (id "testsocial")) (entry (title "Test URL components") (id "testurl")) (entry (title "Test logic components") (id "testlogic")) (entry (title "Test text processing components") (id "testtext")) (entry (title "Test HTTP components") (id "testhttp")) (entry (title "Test widgets") (id "testwidgets")) (entry (title "Test more widgets") (id "testwidgets2")) (entry (title "Test event components") (id "testevents")) (entry (title "Test search components") (id "testsearch")) (entry (title "Test database components") (id "testdb")))