summaryrefslogtreecommitdiff
path: root/ACEXML/compass/component.xml
blob: 4d7fe61424b935d67124f79443e82412a274f84d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
<?xml version="1.0"?>
 <!DOCTYPE corbacomponent SYSTEM "corbacomponent.dtd">
<corbacomponent>
  <corbaversion> 3.0 </corbaversion>
  <componentrepid repid="IDL:BookStore:1.0" />
  <homerepid repid="IDL:BookStoreHome:1.0" />
  <componentkind>
    <entity> <servant lifetime="component" /> </entity>
  </componentkind>
  <security rightsfamily="corba" rightscombinator="secallrights"> </security>
  <threading policy="multithread" />
  <configurationcomplete set="true" />
  <segment name="bookseg" segmenttag="1">
    <segmentmember facettag="1" />
    <segmentmember facettag="2" />
    <containermanagedpersistence>
      <storagehome id="PSDL:BookHome:1.0" />
      <pssimplementation id="ACME-PSS" />
      <catalog type="PSDL:BookCatalog:1.0" />
      <accessmode mode="READ_ONLY" />
      <psstransaction policy="TRANSACTIONAL" >
        <psstransactionisolationlevel level="SERIALIZABLE" />
      </psstransaction>
      <params> <param name="x" value="1" /> </params>
    </containermanagedpersistence>
  </segment>
  <homefeatures name="BookStoreHome" repid="IDL:BookStoreHome:1.0">
    <operationpolicies>
      <operation name="*"> <transaction use="never" /> </operation>
    </operationpolicies>
  </homefeatures>
  <componentfeatures name="BookStore" repid="IDL:BookStore:1.0">
    <inheritscomponent repid="IDL:Acme/Store:1.0" />
    <ports>
      <provides providesname="book_search" repid="IDL:BookSearch:1.0"
                facettag="1">
        <operationpolicies>
          <operation name="getByAuthor">
            <requiredrights> <right name="get"/> </requiredrights>
          </operation>
          <operation name="getByTitle">
            <requiredrights> <right name="get"/> </requiredrights>
          </operation>
          <operation name="getByISBN">
            <requiredrights> <right name="get"/> </requiredrights>
          </operation>
        </operationpolicies>
      </provides>
      <provides providesname="shopping_cart" repid="IDL:CartFactory:1.0"
                facettag="2" />
      <uses usesname="ups_rates" repid="IDL:ShippingRates:1.0" />
      <uses usesname="fedex_rates" repid="IDL:ShippingRates:1.0" />
      <emits emitsname="low_stock" eventtype="StockRecord">
        <eventpolicy policy="normal" />
      </emits>
      <publishes publishesname="offer_alert" eventtype="SpecialOffer">
        <eventpolicy policy="normal" />
      </publishes>
    </ports>
  </componentfeatures>
  <componentfeatures name="Store" repid="IDL:Acme/Store">
    <supportsinterface repid="IDL:Acme/GeneralStore">
      <operationpolicies>
        <operation name="*"> <transaction use="required" /> </operation>
      </operationpolicies>
    </supportsinterface>
    <ports> <provides providesname="admin" repid="IDL:Acme/StoreAdmin:1.0"
                      facettag="3" />
    </ports>
  </componentfeatures>
  <interface name="BookSearch" repid="IDL:BookSearch:1.0">
    <inheritsinterface repid="IDL:SearchEngine:1.0" />
  </interface>
  <interface name="SearchEngine" repid="IDL:SearchEngine:1.0"/>
  <interface name="CartFactory" repid="IDL:CartFactory:1.0"/>
  <interface name="ShippingRates" repid="IDL:ShippingRates:1.0"/>
  <interface name="StoreAdmin" repid="IDL:Acme/StoreAdmin:1.0">
    <operationpolicies>
      <operation name="*">
        <transaction use="required" />
        <requiredrights>
          <right name="manage"/> <right name="set"/>
        </requiredrights>
      </operation>
    </operationpolicies>
  </interface>
  <interface name="GeneralStore" repid="IDL:Acme/GeneralStore:1.0"/>
</corbacomponent>