Skip to content

Commit 8ef9e32

Browse files
author
Kelven Yang
committed
Architecture refactoring - Stateless management server - Spring Framework initiatives
1 parent a75916d commit 8ef9e32

6 files changed

Lines changed: 99 additions & 5 deletions

File tree

client/WEB-INF/web.xml

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,14 @@
2020
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
2121
version="2.5">
2222

23-
23+
<listener>
24+
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
25+
</listener>
26+
<context-param>
27+
<param-name>contextConfigLocation</param-name>
28+
<param-value>classpath:applicationContext.xml</param-value>
29+
</context-param>
30+
2431
<servlet>
2532
<servlet-name>cloudStartupServlet</servlet-name>
2633
<servlet-class>com.cloud.servlet.CloudStartupServlet</servlet-class>

pom.xml

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -79,6 +79,7 @@
7979
<cs.servlet.version>2.4</cs.servlet.version>
8080
<cs.jstl.version>1.2</cs.jstl.version>
8181
<cs.selenium.server.version>1.0-20081010.060147</cs.selenium.server.version>
82+
<org.springframework.version>3.0.5.RELEASE</org.springframework.version>
8283
<skipTests>true</skipTests>
8384

8485
</properties>
@@ -169,6 +170,86 @@
169170
<version>${cs.junit.version}</version>
170171
<scope>test</scope>
171172
</dependency>
173+
174+
<dependency>
175+
<groupId>org.springframework</groupId>
176+
<artifactId>spring-core</artifactId>
177+
<version>${org.springframework.version}</version>
178+
</dependency>
179+
180+
<dependency>
181+
<groupId>org.springframework</groupId>
182+
<artifactId>spring-expression</artifactId>
183+
<version>${org.springframework.version}</version>
184+
</dependency>
185+
186+
<dependency>
187+
<groupId>org.springframework</groupId>
188+
<artifactId>spring-beans</artifactId>
189+
<version>${org.springframework.version}</version>
190+
</dependency>
191+
192+
<dependency>
193+
<groupId>org.springframework</groupId>
194+
<artifactId>spring-aop</artifactId>
195+
<version>${org.springframework.version}</version>
196+
</dependency>
197+
198+
<dependency>
199+
<groupId>org.springframework</groupId>
200+
<artifactId>spring-context</artifactId>
201+
<version>${org.springframework.version}</version>
202+
</dependency>
203+
204+
<dependency>
205+
<groupId>org.springframework</groupId>
206+
<artifactId>spring-context-support</artifactId>
207+
<version>${org.springframework.version}</version>
208+
</dependency>
209+
210+
<dependency>
211+
<groupId>org.springframework</groupId>
212+
<artifactId>spring-tx</artifactId>
213+
<version>${org.springframework.version}</version>
214+
</dependency>
215+
216+
<dependency>
217+
<groupId>org.springframework</groupId>
218+
<artifactId>spring-jdbc</artifactId>
219+
<version>${org.springframework.version}</version>
220+
</dependency>
221+
222+
<dependency>
223+
<groupId>org.springframework</groupId>
224+
<artifactId>spring-orm</artifactId>
225+
<version>${org.springframework.version}</version>
226+
</dependency>
227+
228+
<dependency>
229+
<groupId>org.springframework</groupId>
230+
<artifactId>spring-oxm</artifactId>
231+
<version>${org.springframework.version}</version>
232+
</dependency>
233+
234+
<dependency>
235+
<groupId>org.springframework</groupId>
236+
<artifactId>spring-web</artifactId>
237+
<version>${org.springframework.version}</version>
238+
</dependency>
239+
240+
<dependency>
241+
<groupId>org.springframework</groupId>
242+
<artifactId>spring-webmvc</artifactId>
243+
<version>${org.springframework.version}</version>
244+
</dependency>
245+
246+
<dependency>
247+
<groupId>org.springframework</groupId>
248+
<artifactId>spring-test</artifactId>
249+
<version>${org.springframework.version}</version>
250+
<scope>test</scope>
251+
</dependency>
252+
172253
</dependencies>
173254

174255
<build>

utils/conf/db.properties

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ cluster.servlet.port=9090
2424
# CloudStack database settings
2525
db.cloud.username=cloud
2626
db.cloud.password=cloud
27+
db.root.password=
2728
db.cloud.host=localhost
2829
db.cloud.port=3306
2930
db.cloud.name=cloud

utils/src/com/cloud/utils/events/EventBus.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,11 @@
1717

1818
package com.cloud.utils.events;
1919

20+
import java.io.Serializable;
21+
2022
public interface EventBus {
2123
void subscribe(String subject, Subscriber subscriber);
2224
void unsubscribe(String subject, Subscriber subscriber);
2325

24-
void publish(String subject, PublishScope scope, Object sender, String args);
26+
void publish(String subject, PublishScope scope, Object sender, Serializable args);
2527
}

utils/src/com/cloud/utils/events/EventBusBase.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717

1818
package com.cloud.utils.events;
1919

20+
import java.io.Serializable;
2021
import java.util.ArrayList;
2122
import java.util.HashMap;
2223
import java.util.List;
@@ -72,7 +73,7 @@ public void unsubscribe(String subject, Subscriber subscriber) {
7273

7374
@Override
7475
public void publish(String subject, PublishScope scope, Object sender,
75-
String args) {
76+
Serializable args) {
7677

7778
if(_gate.enter(true)) {
7879

@@ -283,7 +284,7 @@ public void addChild(String key, SubscriptionNode childNode) {
283284
_children.put(key, childNode);
284285
}
285286

286-
public void notifySubscribers(String subject, Object sender, String args) {
287+
public void notifySubscribers(String subject, Object sender, Serializable args) {
287288
for(Subscriber subscriber : _subscribers) {
288289
subscriber.onPublishEvent(subject, sender, args);
289290
}

utils/src/com/cloud/utils/events/Subscriber.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,8 @@
1717

1818
package com.cloud.utils.events;
1919

20+
import java.io.Serializable;
21+
2022
public interface Subscriber {
21-
void onPublishEvent(String subject, Object sender, String args);
23+
void onPublishEvent(String subject, Object sender, Serializable args);
2224
}

0 commit comments

Comments
 (0)