Author: shankar
Date: Wed Feb 11 08:18:07 2009
New Revision: 743271
URL: http://svn.apache.org/viewvc?rev=743271&view=rev
Log:
Modification to work with WSO2 Carbon based WSAS 3.0
Added:
incubator/stonehenge/trunk/stocktrader/wsas/order_processor/src/org/wso2/stocktrader/service/OrderProcessorServicePasswordCB.java
Modified:
incubator/stonehenge/trunk/stocktrader/wsas/business_service/resources/META-INF/TradeServiceWsas.wsdl
incubator/stonehenge/trunk/stocktrader/wsas/business_service/src/org/wso2/stocktrader/mssql/MSSQLOrderDAO.java
incubator/stonehenge/trunk/stocktrader/wsas/order_processor/resources/msec/META-INF/services.xml
Modified:
incubator/stonehenge/trunk/stocktrader/wsas/business_service/resources/META-INF/TradeServiceWsas.wsdl
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/wsas/business_service/resources/META-INF/TradeServiceWsas.wsdl?rev=743271&r1=743270&r2=743271&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/wsas/business_service/resources/META-INF/TradeServiceWsas.wsdl
(original)
+++
incubator/stonehenge/trunk/stocktrader/wsas/business_service/resources/META-INF/TradeServiceWsas.wsdl
Wed Feb 11 08:18:07 2009
@@ -168,7 +168,7 @@
</wsdl:binding>
<wsdl:service name="TradeServiceWsas">
<wsdl:port name="BasicHttpBinding_ITradeServices"
binding="tns:BasicHttpBinding_ITradeServices">
- <soap:address location=""/>
+ <soap:address location="http://localhost"/>
</wsdl:port>
</wsdl:service>
</wsdl:definitions>
Modified:
incubator/stonehenge/trunk/stocktrader/wsas/business_service/src/org/wso2/stocktrader/mssql/MSSQLOrderDAO.java
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/wsas/business_service/src/org/wso2/stocktrader/mssql/MSSQLOrderDAO.java?rev=743271&r1=743270&r2=743271&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/wsas/business_service/src/org/wso2/stocktrader/mssql/MSSQLOrderDAO.java
(original)
+++
incubator/stonehenge/trunk/stocktrader/wsas/business_service/src/org/wso2/stocktrader/mssql/MSSQLOrderDAO.java
Wed Feb 11 08:18:07 2009
@@ -50,7 +50,8 @@
private static final String SQL_GET_ACCOUNTID = "Set NOCOUNT ON; SELECT
ACCOUNTID FROM dbo.ACCOUNT WITH (NOLOCK) WHERE PROFILE_USERID = ?";
// CHECKME
- private static final String SQL_INSERT_ORDER = "INSERT INTO dbo.ORDERS
(OPENDATE, ORDERFEE, PRICE, QUOTE_SYMBOL, QUANTITY, ORDERTYPE, ORDERSTATUS,
ACCOUNT_ACCOUNTID, HOLDING_HOLDINGID) VALUES (GetDate(), ?, ?, ?, ?, ?, 'open',
?, ?); SELECT ID=@@IDENTITY";
+ private static final String SQL_INSERT_ORDER = "INSERT INTO dbo.ORDERS
(OPENDATE, ORDERFEE, PRICE, QUOTE_SYMBOL, QUANTITY, ORDERTYPE, ORDERSTATUS,
ACCOUNT_ACCOUNTID, HOLDING_HOLDINGID) VALUES (GetDate(), ?, ?, ?, ?, ?, 'open',
?, ?)";
+ private static final String SQL_SELECT_ORDER_ID = "SELECT ID=@@IDENTITY
FROM dbo.ORDERS WITH (NOLOCK) WHERE ORDERFEE=? AND PRICE=? AND QUOTE_SYMBOL=?
AND QUANTITY=? AND ORDERTYPE=? AND ORDERSTATUS=? AND ACCOUNT_ACCOUNTID=? AND
HOLDING_HOLDINGID=?";
public MSSQLOrderDAO(Connection sqlConnection) throws DAOException {
super(sqlConnection);
@@ -387,9 +388,9 @@
}
PreparedStatement insertOrder = null;
-// PreparedStatement selectOrderID = null;
+ PreparedStatement selectOrderID = null;
try {
- insertOrder =
sqlConnection.prepareCall(SQL_INSERT_ORDER);
+ insertOrder =
sqlConnection.prepareStatement(SQL_INSERT_ORDER);
insertOrder.setBigDecimal(1, order.getOrderFee());
insertOrder.setBigDecimal(2, order.getPrice());
insertOrder.setString(3, order.getSymbol());
@@ -397,22 +398,22 @@
insertOrder.setString(5, order.getOrderType());
insertOrder.setInt(6, order.getAccountId());
insertOrder.setInt(7, order.getHoldingId());
- ResultSet rs = insertOrder.executeQuery();
+ insertOrder.executeUpdate();
-// selectOrderID =
sqlConnection.prepareStatement(SQL_SELECT_ORDER_ID);
-// // ORDERFEE = ? AND PRICE = ? AND QUOTE_SYMBOL = ? AND
QUANTITY = ?
-// // ORDERTYPE = ? ORDERSTATUS = ? AND ACCOUNT_ACCOUNTID
= ?
-// // HOLDING_HOLDINGID = ?"
-// selectOrderID.setBigDecimal(1, order.getOrderFee());
-// selectOrderID.setBigDecimal(2, order.getPrice());
-// selectOrderID.setString(3, order.getSymbol());
-// selectOrderID.setDouble(4, order.getQuantity());
-// selectOrderID.setString(5, order.getOrderType());
-// selectOrderID.setString(6, "open");
-// selectOrderID.setInt(7, order.getAccountId());
-// selectOrderID.setInt(8, order.getHoldingId());
-// ResultSet rs = selectOrderID.executeQuery();
+ selectOrderID =
sqlConnection.prepareStatement(SQL_SELECT_ORDER_ID);
+ // ORDERFEE = ? AND PRICE = ? AND QUOTE_SYMBOL = ? AND
QUANTITY = ?
+ // ORDERTYPE = ? ORDERSTATUS = ? AND ACCOUNT_ACCOUNTID
= ?
+ // HOLDING_HOLDINGID = ?"
+ selectOrderID.setBigDecimal(1, order.getOrderFee());
+ selectOrderID.setBigDecimal(2, order.getPrice());
+ selectOrderID.setString(3, order.getSymbol());
+ selectOrderID.setDouble(4, order.getQuantity());
+ selectOrderID.setString(5, order.getOrderType());
+ selectOrderID.setString(6, "open");
+ selectOrderID.setInt(7, order.getAccountId());
+ selectOrderID.setInt(8, order.getHoldingId());
+ ResultSet rs = selectOrderID.executeQuery();
if (rs.next()) {
try {
order.setOrderID(rs.getInt(1));
@@ -434,13 +435,13 @@
logger.debug("", e);
}
}
-// if (selectOrderID != null) {
-// try {
-// selectOrderID.close();
-// } catch (SQLException e) {
-// logger.debug("", e);
-// }
-// }
+ if (selectOrderID != null) {
+ try {
+ selectOrderID.close();
+ } catch (SQLException e) {
+ logger.debug("", e);
+ }
+ }
}
return order;
}
Modified:
incubator/stonehenge/trunk/stocktrader/wsas/order_processor/resources/msec/META-INF/services.xml
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/wsas/order_processor/resources/msec/META-INF/services.xml?rev=743271&r1=743270&r2=743271&view=diff
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/wsas/order_processor/resources/msec/META-INF/services.xml
(original)
+++
incubator/stonehenge/trunk/stocktrader/wsas/order_processor/resources/msec/META-INF/services.xml
Wed Feb 11 08:18:07 2009
@@ -109,20 +109,22 @@
<rampart:timestampTTL>300</rampart:timestampTTL>
<rampart:timestampMaxSkew>300</rampart:timestampMaxSkew>
<rampart:encryptionCrypto>
- <rampart:crypto
provider="org.wso2.wsas.security.ServerCrypto">
-
<rampart:property
name="org.wso2.wsas.security.wso2wsas.crypto.keystore">sec.jks</rampart:property>
-
<rampart:property
name="org.wso2.wsas.security.wso2wsas.crypto.alias">bob</rampart:property>
+ <rampart:crypto
provider="org.wso2.carbon.security.util.ServerCrypto">
+
<rampart:property
name="org.wso2.carbon.security.crypto.privatestore">sec.jks</rampart:property>
+
<rampart:property
name="org.wso2.carbon.security.crypto.truststores">sec.jks</rampart:property>
+
<rampart:property
name="org.wso2.carbon.security.crypto.alias">bob</rampart:property>
<rampart:property name="rampart.config.user">bob</rampart:property>
</rampart:crypto>
</rampart:encryptionCrypto>
<rampart:signatureCrypto>
- <rampart:crypto
provider="org.wso2.wsas.security.ServerCrypto">
-
<rampart:property
name="org.wso2.wsas.security.wso2wsas.crypto.keystore">sec.jks</rampart:property>
-
<rampart:property
name="org.wso2.wsas.security.wso2wsas.crypto.alias">bob</rampart:property>
+ <rampart:crypto
provider="org.wso2.carbon.security.util.ServerCrypto">
+
<rampart:property
name="org.wso2.carbon.security.crypto.privatestore">sec.jks</rampart:property>
+
<rampart:property
name="org.wso2.carbon.security.crypto.truststores">sec.jks</rampart:property>
+
<rampart:property
name="org.wso2.carbon.security.crypto.alias">bob</rampart:property>
<rampart:property name="rampart.config.user">bob</rampart:property>
</rampart:crypto>
</rampart:signatureCrypto>
-
<rampart:passwordCallbackClass>org.apache.rampart.testing.PasswordCB</rampart:passwordCallbackClass>
+
<rampart:passwordCallbackClass>org.wso2.stocktrader.service.OrderProcessorServicePasswordCB</rampart:passwordCallbackClass>
</rampart:RampartConfig>
</wsp:All>
</wsp:ExactlyOne>
Added:
incubator/stonehenge/trunk/stocktrader/wsas/order_processor/src/org/wso2/stocktrader/service/OrderProcessorServicePasswordCB.java
URL:
http://svn.apache.org/viewvc/incubator/stonehenge/trunk/stocktrader/wsas/order_processor/src/org/wso2/stocktrader/service/OrderProcessorServicePasswordCB.java?rev=743271&view=auto
==============================================================================
---
incubator/stonehenge/trunk/stocktrader/wsas/order_processor/src/org/wso2/stocktrader/service/OrderProcessorServicePasswordCB.java
(added)
+++
incubator/stonehenge/trunk/stocktrader/wsas/order_processor/src/org/wso2/stocktrader/service/OrderProcessorServicePasswordCB.java
Wed Feb 11 08:18:07 2009
@@ -0,0 +1,23 @@
+package org.wso2.stocktrader.service;
+
+import java.io.IOException;
+
+import javax.security.auth.callback.Callback;
+import javax.security.auth.callback.CallbackHandler;
+import javax.security.auth.callback.UnsupportedCallbackException;
+
+import org.apache.ws.security.WSPasswordCallback;
+
+public class OrderProcessorServicePasswordCB implements CallbackHandler {
+ public void handle(Callback[] callbacks) throws IOException,
+ UnsupportedCallbackException {
+ for (int i = 0; i < callbacks.length; i++) {
+ WSPasswordCallback pwcb = (WSPasswordCallback)
callbacks[i];
+ String id = pwcb.getIdentifer();
+ if ("bob".equals(id))
+ pwcb.setPassword("password");
+ else if ("bob.cer".equals(id))
+ pwcb.setPassword("password");
+ }
+ }
+}