1
1
<?xml version="1.0" encoding="UTF-8"?>
3
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4
~ Copyright (c) 2009 Eucalyptus Systems, Inc.
6
~ This program is free software: you can redistribute it and/or modify
7
~ it under the terms of the GNU General Public License as published by
8
~ the Free Software Foundation, only version 3 of the License.
11
~ This file is distributed in the hope that it will be useful, but WITHOUT
12
~ ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
13
~ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
16
~ You should have received a copy of the GNU General Public License along
17
~ with this program. If not, see http://www.gnu.org/licenses/.
19
~ Please contact Eucalyptus Systems, Inc., 130 Castilian
20
~ Dr., Goleta, CA 93101 USA or visit http://www.eucalyptus.com/licenses/
21
~ if you need additional information or have any questions.
23
~ This file may incorporate work covered under the following copyright and
26
~ Software License Agreement (BSD License)
28
~ Copyright (c) 2008, Regents of the University of California
29
~ All rights reserved.
31
~ Redistribution and use of this software in source and binary forms, with
32
~ or without modification, are permitted provided that the following
35
~ Redistributions of source code must retain the above copyright notice,
36
~ this list of conditions and the following disclaimer.
38
~ Redistributions in binary form must reproduce the above copyright
39
~ notice, this list of conditions and the following disclaimer in the
40
~ documentation and/or other materials provided with the distribution.
42
~ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS
43
~ IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
44
~ TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
45
~ PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER
46
~ OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
47
~ EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
48
~ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
49
~ PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
50
~ LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
51
~ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
52
~ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. USERS OF
53
~ THIS SOFTWARE ACKNOWLEDGE THE POSSIBLE PRESENCE OF OTHER OPEN SOURCE
54
~ LICENSED MATERIAL, COPYRIGHTED MATERIAL OR PATENTED MATERIAL IN THIS
55
~ SOFTWARE, AND IF ANY SUCH MATERIAL IS DISCOVERED THE PARTY DISCOVERING
56
~ IT MAY INFORM DR. RICH WOLSKI AT THE UNIVERSITY OF CALIFORNIA, SANTA
57
~ BARBARA WHO WILL THEN ASCERTAIN THE MOST APPROPRIATE REMEDY, WHICH IN
58
~ THE REGENTS’ DISCRETION MAY INCLUDE, WITHOUT LIMITATION, REPLACEMENT
59
~ OF THE CODE SO IDENTIFIED, LICENSING OF THE CODE SO IDENTIFIED, OR
60
~ WITHDRAWAL OF THE CODE CAPABILITY TO THE EXTENT NEEDED TO COMPLY WITH
61
~ ANY SUCH LICENSES OR RIGHTS.
62
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
63
~ Author: chris grzegorczyk grze@eucalyptus.com
3
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ Copyright (c) 2009 Eucalyptus Systems,
4
Inc. ~ ~ This program is free software: you can redistribute it and/or modify ~ it under the terms of the GNU
5
General Public License as published by ~ the Free Software Foundation, only version 3 of the License. ~ ~ ~ This
6
file is distributed in the hope that it will be useful, but WITHOUT ~ ANY WARRANTY; without even the implied
7
warranty of MERCHANTABILITY or ~ FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License ~ for more
8
details. ~ ~ You should have received a copy of the GNU General Public License along ~ with this program. If not,
9
see http://www.gnu.org/licenses/. ~ ~ Please contact Eucalyptus Systems, Inc., 130 Castilian ~ Dr., Goleta, CA 93101
10
USA or visit http://www.eucalyptus.com/licenses/ ~ if you need additional information or have any questions. ~ ~
11
This file may incorporate work covered under the following copyright and ~ permission notice: ~ ~ Software License
12
Agreement (BSD License) ~ ~ Copyright (c) 2008, Regents of the University of California ~ All rights reserved. ~ ~
13
Redistribution and use of this software in source and binary forms, with ~ or without modification, are permitted
14
provided that the following ~ conditions are met: ~ ~ Redistributions of source code must retain the above copyright
15
notice, ~ this list of conditions and the following disclaimer. ~ ~ Redistributions in binary form must reproduce
16
the above copyright ~ notice, this list of conditions and the following disclaimer in the ~ documentation and/or
17
other materials provided with the distribution. ~ ~ THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND
18
CONTRIBUTORS "AS ~ IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED ~ TO, THE IMPLIED
19
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A ~ PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
20
OWNER ~ OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, ~ EXEMPLARY, OR CONSEQUENTIAL
21
DAMAGES (INCLUDING, BUT NOT LIMITED TO, ~ PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR ~
22
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF ~ LIABILITY, WHETHER IN CONTRACT, STRICT
23
LIABILITY, OR TORT (INCLUDING ~ NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS ~ SOFTWARE, EVEN
24
IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. USERS OF ~ THIS SOFTWARE ACKNOWLEDGE THE POSSIBLE PRESENCE OF OTHER
25
OPEN SOURCE ~ LICENSED MATERIAL, COPYRIGHTED MATERIAL OR PATENTED MATERIAL IN THIS ~ SOFTWARE, AND IF ANY SUCH
26
MATERIAL IS DISCOVERED THE PARTY DISCOVERING ~ IT MAY INFORM DR. RICH WOLSKI AT THE UNIVERSITY OF CALIFORNIA, SANTA
27
~ BARBARA WHO WILL THEN ASCERTAIN THE MOST APPROPRIATE REMEDY, WHICH IN ~ THE REGENTS’ DISCRETION MAY INCLUDE,
28
WITHOUT LIMITATION, REPLACEMENT ~ OF THE CODE SO IDENTIFIED, LICENSING OF THE CODE SO IDENTIFIED, OR ~ WITHDRAWAL OF
29
THE CODE CAPABILITY TO THE EXTENT NEEDED TO COMPLY WITH ~ ANY SUCH LICENSES OR RIGHTS.
30
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~ Author: chris grzegorczyk
66
34
<binding force-classes="true">
67
<namespace uri="http://eucalyptus.ucsb.edu/" default="elements"/>
69
<mapping class="edu.ucsb.eucalyptus.msgs.EucalyptusMessage" abstract="true">
70
<value name="correlationId" field="correlationId" usage="optional"/>
71
<value name="userId" field="userId" usage="optional"/>
72
<value name="statusMessage" field="statusMessage" usage="optional"/>
73
<value name="return" field="_return" usage="optional"/>
76
<mapping class="edu.ucsb.eucalyptus.msgs.TerminateInstancesItemType" abstract="true">
77
<value name="instanceId" field="instanceId" usage="required"/>
78
<value name="shutdownStateCode" field="shutdownStateCode" usage="optional"/>
79
<value name="shutdownStateName" field="shutdownStateName" usage="optional"/>
80
<value name="previousStateCode" field="previousStateCode" usage="optional"/>
81
<value name="previousStateName" field="previousStateName" usage="optional"/>
84
<mapping class="edu.ucsb.eucalyptus.cloud.VmInfo" abstract="true">
85
<value name="imageId" field="imageId" usage="optional"/>
86
<value name="kernelId" field="kernelId" usage="optional"/>
87
<value name="ramdiskId" field="ramdiskId" usage="optional"/>
88
<value name="instanceId" field="instanceId" usage="optional"/>
89
<structure name="instanceType" usage="optional">
90
<structure field="instanceType" map-as="edu.ucsb.eucalyptus.msgs.VmTypeInfo"/>
92
<value name="keyName" field="keyValue" usage="optional"/>
93
<value name="launchTime" field="launchTime" usage="optional"/>
94
<value name="stateName" field="stateName" usage="optional"/>
95
<structure name="netParams">
96
<structure field="netParams" map-as="edu.ucsb.eucalyptus.msgs.NetworkConfigType"/>
98
<value name="ownerId" field="ownerId"/>
99
<value name="reservationId" field="reservationId"/>
100
<value name="serviceTag" field="serviceTag" usage="optional"/>
101
<value name="userData" field="userData" usage="optional"/>
102
<value name="launchIndex" field="launchIndex" usage="optional"/>
103
<value name="networkIndex" field="networkIndex" usage="optional"/>
104
<structure usage="optional">
105
<collection field="groupNames" factory="org.jibx.runtime.Utility.arrayListFactory">
106
<value name="groupNames" type="java.lang.String"/>
109
<structure usage="optional">
110
<collection field="volumes" factory="org.jibx.runtime.Utility.arrayListFactory">
111
<structure name="volumes" map-as="edu.ucsb.eucalyptus.msgs.AttachedVolume"/>
116
<mapping class="edu.ucsb.eucalyptus.msgs.AttachedVolume" abstract="true">
117
<value name="volumeId" field="volumeId" usage="required"/>
118
<value name="remoteDev" field="remoteDevice" usage="required"/>
119
<value name="localDev" field="device" usage="required"/>
120
<value name="state" field="status" usage="required"/>
124
<mapping class="edu.ucsb.eucalyptus.msgs.VmTypeInfo" abstract="true">
125
<value name="name" field="name" usage="required"/>
126
<value name="memory" field="memory" usage="required"/>
127
<value name="cores" field="cores" usage="required"/>
128
<value name="disk" field="disk" usage="required"/>
131
<mapping class="edu.ucsb.eucalyptus.msgs.ResourceType" abstract="true">
132
<structure name="instanceType" field="instanceType" map-as="edu.ucsb.eucalyptus.msgs.VmTypeInfo"/>
133
<value name="maxInstances" field="maxInstances" usage="optional"/>
134
<value name="availableInstances" field="availableInstances" usage="optional"/>
137
<mapping class="edu.ucsb.eucalyptus.msgs.NetworkConfigType" abstract="true">
138
<value name="privateMacAddress" field="macAddress"/>
139
<value name="publicMacAddress" field="ignoredMacAddress"/>
140
<value name="vlan" field="vlan"/>
141
<value name="privateIp" field="ipAddress"/>
142
<value name="publicIp" field="ignoredPublicIp"/>
144
<mapping class="edu.ucsb.eucalyptus.msgs.NetworkInfoType" abstract="true">
145
<value name="vlan" field="vlan"/>
146
<value name="netName" field="networkName"/>
147
<value name="userName" field="userName"/>
148
<structure usage="optional">
149
<collection field="allocatedAddresses" factory="org.jibx.runtime.Utility.arrayListFactory">
150
<value name="activeAddrs" type="java.lang.String"/>
155
<mapping class="edu.ucsb.eucalyptus.msgs.PacketFilterRule" abstract="true">
156
<value name="type" field="policy" usage="required"/>
157
<structure usage="optional">
158
<collection field="sourceNetworkNames" factory="org.jibx.runtime.Utility.arrayListFactory">
159
<value name="sourceNames" type="java.lang.String"/>
162
<structure usage="optional">
163
<collection field="sourceUserNames" factory="org.jibx.runtime.Utility.arrayListFactory">
164
<value name="userNames" type="java.lang.String"/>
167
<structure usage="optional">
168
<collection field="sourceCidrs" factory="org.jibx.runtime.Utility.arrayListFactory">
169
<value name="sourceNets" type="java.lang.String"/>
172
<value name="destUserName" field="destUserName" usage="required"/>
173
<value name="destName" field="destNetworkName" usage="required"/>
174
<value name="protocol" field="protocol" usage="required"/>
175
<value name="portRangeMin" field="portMin" usage="required"/>
176
<value name="portRangeMax" field="portMax" usage="required"/>
179
<mapping class="edu.ucsb.eucalyptus.cloud.VmImageInfo" abstract="true">
180
<value name="imageId" field="imageId" usage="required"/>
181
<value name="kernelId" field="kernelId" usage="required"/>
182
<value name="ramdiskId" field="ramdiskId" usage="optional"/>
183
<value name="imageURL" field="imageLocation" usage="required"/>
184
<value name="kernelURL" field="kernelLocation" usage="required"/>
185
<value name="ramdiskURL" field="ramdiskLocation" usage="optional"/>
188
<mapping class="edu.ucsb.eucalyptus.cloud.VmKeyInfo" abstract="true">
189
<value name="keyName" field="value" usage="required"/>
35
<namespace uri="http://eucalyptus.ucsb.edu/" default="elements" />
37
<mapping class="edu.ucsb.eucalyptus.msgs.EucalyptusMessage" abstract="true" extends="edu.ucsb.eucalyptus.msgs.BaseMessage">
38
<structure map-as="edu.ucsb.eucalyptus.msgs.BaseMessage"/>
41
<mapping class="edu.ucsb.eucalyptus.msgs.BaseMessage" abstract="true">
42
<value name="correlationId" field="correlationId" usage="optional" />
43
<value name="userId" field="userId" usage="optional" />
44
<value name="statusMessage" field="statusMessage" usage="optional" />
45
<value name="return" field="_return" usage="optional" />
48
<mapping class="edu.ucsb.eucalyptus.msgs.TerminateInstancesItemType" abstract="true">
49
<value name="instanceId" field="instanceId" usage="required" />
50
<value name="shutdownStateCode" field="shutdownStateCode" usage="optional" />
51
<value name="shutdownStateName" field="shutdownStateName" usage="optional" />
52
<value name="previousStateCode" field="previousStateCode" usage="optional" />
53
<value name="previousStateName" field="previousStateName" usage="optional" />
56
<mapping class="edu.ucsb.eucalyptus.cloud.VmInfo" abstract="true">
57
<value name="imageId" field="imageId" usage="optional" />
58
<value name="kernelId" field="kernelId" usage="optional" />
59
<value name="ramdiskId" field="ramdiskId" usage="optional" />
60
<value name="instanceId" field="instanceId" usage="optional" />
61
<structure name="instanceType" usage="optional">
62
<structure field="instanceType" map-as="edu.ucsb.eucalyptus.msgs.VmTypeInfo" />
64
<value name="keyName" field="keyValue" usage="optional" />
65
<value name="launchTime" field="launchTime" usage="optional" />
66
<value name="stateName" field="stateName" usage="optional" />
67
<structure name="netParams">
68
<structure field="netParams" map-as="edu.ucsb.eucalyptus.msgs.NetworkConfigType" />
70
<value name="ownerId" field="ownerId" />
71
<value name="reservationId" field="reservationId" />
72
<value name="serviceTag" field="serviceTag" usage="optional" />
73
<value name="userData" field="userData" usage="optional" />
74
<value name="launchIndex" field="launchIndex" usage="optional" />
75
<structure usage="optional">
76
<collection field="groupNames" factory="org.jibx.runtime.Utility.arrayListFactory">
77
<value name="groupNames" type="java.lang.String" />
80
<structure usage="optional">
81
<collection field="volumes" factory="org.jibx.runtime.Utility.arrayListFactory">
82
<structure name="volumes" map-as="edu.ucsb.eucalyptus.msgs.AttachedVolume" />
87
<mapping class="edu.ucsb.eucalyptus.msgs.AttachedVolume" abstract="true">
88
<value name="volumeId" field="volumeId" usage="required" />
89
<value name="remoteDev" field="remoteDevice" usage="required" />
90
<value name="localDev" field="device" usage="required" />
91
<value name="state" field="status" usage="required" />
95
<mapping class="edu.ucsb.eucalyptus.msgs.VmTypeInfo" abstract="true">
96
<value name="name" field="name" usage="required" />
97
<value name="memory" field="memory" usage="required" />
98
<value name="cores" field="cores" usage="required" />
99
<value name="disk" field="disk" usage="required" />
102
<mapping class="edu.ucsb.eucalyptus.msgs.BlockDeviceMappingItemType" abstract="true">
103
<value name="deviceName" field="deviceName" usage="optional" />
104
<value name="virtualName" field="virtualName" usage="optional" />
107
<mapping class="edu.ucsb.eucalyptus.msgs.ResourceType" abstract="true">
108
<structure name="instanceType" field="instanceType" map-as="edu.ucsb.eucalyptus.msgs.VmTypeInfo" />
109
<value name="maxInstances" field="maxInstances" usage="optional" />
110
<value name="availableInstances" field="availableInstances" usage="optional" />
113
<mapping class="edu.ucsb.eucalyptus.msgs.NetworkConfigType" abstract="true">
114
<value name="privateMacAddress" field="macAddress" />
115
<value name="privateIp" field="ipAddress" />
116
<value name="publicIp" field="ignoredPublicIp" />
117
<value name="vlan" field="vlan" />
118
<value name="networkIndex" field="networkIndex" />
120
<mapping class="edu.ucsb.eucalyptus.msgs.NetworkInfoType" abstract="true">
121
<value name="vlan" field="vlan" />
122
<value name="netName" field="networkName" />
123
<value name="userName" field="userName" />
124
<structure usage="optional">
125
<collection field="allocatedAddresses" factory="org.jibx.runtime.Utility.arrayListFactory">
126
<value name="activeAddrs" type="java.lang.String" />
131
<mapping class="edu.ucsb.eucalyptus.msgs.PacketFilterRule" abstract="true">
132
<value name="type" field="policy" usage="required" />
133
<structure usage="optional">
134
<collection field="sourceNetworkNames" factory="org.jibx.runtime.Utility.arrayListFactory">
135
<value name="sourceNames" type="java.lang.String" />
138
<structure usage="optional">
139
<collection field="sourceUserNames" factory="org.jibx.runtime.Utility.arrayListFactory">
140
<value name="userNames" type="java.lang.String" />
143
<structure usage="optional">
144
<collection field="sourceCidrs" factory="org.jibx.runtime.Utility.arrayListFactory">
145
<value name="sourceNets" type="java.lang.String" />
148
<value name="destUserName" field="destUserName" usage="required" />
149
<value name="destName" field="destNetworkName" usage="required" />
150
<value name="protocol" field="protocol" usage="required" />
151
<value name="portRangeMin" field="portMin" usage="required" />
152
<value name="portRangeMax" field="portMax" usage="required" />
155
<mapping class="edu.ucsb.eucalyptus.cloud.VmImageInfo" abstract="true">
156
<value name="imageId" field="imageId" usage="required" />
157
<value name="kernelId" field="kernelId" usage="optional" />
158
<value name="ramdiskId" field="ramdiskId" usage="optional" />
159
<value name="imageURL" field="imageLocation" usage="required" />
160
<value name="kernelURL" field="kernelLocation" usage="optional" />
161
<value name="ramdiskURL" field="ramdiskLocation" usage="optional" />
164
<mapping class="edu.ucsb.eucalyptus.cloud.VmKeyInfo" abstract="true">
165
<value name="keyName" field="value" usage="required" />