Author: wire
Date: Fri Jun 10 08:15:25 2005
New Revision: 189973

URL: http://svn.apache.org/viewcvs?rev=189973&view=rev
Log:
Implementing WCMgr

Added:
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/TestColorExtraction.java
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJPanel.java
      - copied, changed from r189764, 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJFrame.java
Removed:
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJFrame.java
Modified:
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/SubsciberInfoJPanel.java
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/WcDisplayApp.java
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcmgr/WcMgrApp.java
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/impl/WsImpl.java
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/model/IWs.java
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/InteropSimulatorTest.java
    
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/StatusSimulator.java

Modified: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/SubsciberInfoJPanel.java
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/SubsciberInfoJPanel.java?rev=189973&r1=189972&r2=189973&view=diff
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/SubsciberInfoJPanel.java
 (original)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/SubsciberInfoJPanel.java
 Fri Jun 10 08:15:25 2005
@@ -55,8 +55,8 @@
        private void initGUI() {
                try {
                        FlowLayout thisLayout = new FlowLayout();
-                       this.setPreferredSize(new java.awt.Dimension(1112, 80));
                        thisLayout.setAlignment(FlowLayout.LEFT);
+                       this.setPreferredSize(new java.awt.Dimension(1112, 80));
                        this.setLayout(thisLayout);
                        {
                                jLabelResourceUrl = new JLabel();
@@ -128,6 +128,19 @@
        public String getNotificationLister(){
                return jTextFieldNotificationListener.getText();
        }
+       public void setNotificationLister(String listenerName){
+               jTextFieldNotificationListener.setText(listenerName);
+       }
+       public void setResourceUrl(String URL){
+               jTextFieldResourceURL.setText(URL);
+       }
+       public void setTopicNamespace(String name){
+               jTextFieldTopicNamespace.setText(name);
+       }
+       public void getTopicName(String name){
+               jTextFieldTopicName.setText(name);
+       }
+
        public void setConnectionListener(ConnectionListener listener){
                this.listener=listener;
        }

Added: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/TestColorExtraction.java
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/TestColorExtraction.java?rev=189973&view=auto
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/TestColorExtraction.java
 (added)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/smgr/TestColorExtraction.java
 Fri Jun 10 08:15:25 2005
@@ -0,0 +1,40 @@
+/*
+ * Created on Jun 9, 2005
+ *
+ * TODO To change the template for this generated file go to
+ * Window - Preferences - Java - Code Style - Code Templates
+ */
+package org.apache.interop.smgr;
+
+import junit.framework.TestCase;
+
+/**
+ * @author wire
+ *
+ * TODO To change the template for this generated type comment go to
+ * Window - Preferences - Java - Code Style - Code Templates
+ */
+public class TestColorExtraction extends TestCase {
+       private static String xmlRedText="<soapenv:Envelope 
xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"; 
xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\"; 
xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"; 
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"; 
xmlns:wsa=\"http://schemas.xmlsoap.org/ws/2003/03/addressing\";><soapenv:Header><wsa:MessageID>uuid:5DD8308D-0104-4000-E000-0700C0A80128</wsa:MessageID><wsa:To
 
xmlns:add=\"http://schemas.xmlsoap.org/ws/2003/03/addressing\";>http://12.35.246.160:8001/bogasendpoint</wsa:To><wsa:Action>http://docs.oasis-open.org/wsn/2004/06/WS-BaseNotification/Notify</wsa:Action></soapenv:Header><soapenv:Body><wsnt:Notify
 
xmlns:wsnt=\"http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd\";><wsnt:NotificationMessage><Topic
 Dialect=\"http://docs.oasis-open.org/wsn/2004/06/TopicExpression/Simple\"; 
xmlns=\"http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd\";
 xmlns:simple55NS=\"rim\">simple55NS:CodeModuleSize</Topic><ProducerReference 
xmlns=\"http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd\";
 
xmlns:wsa=\"http://schemas.xmlsoap.org/ws/2003/03/addressing\";><wsa:Address>http://IBMWSDMINTEROP:4400/ettk/wsdm/services/ADMNotifyPort</wsa:Address></ProducerReference><Message
 
xmlns=\"http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd\";><muws-p1-xs:ManagementEvent
 
xmlns:muws-p1-xs=\"http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part1.xsd\";><muws-p1-xs:reportTime>2005-06-08T21:25:46.193Z</muws-p1-xs:reportTime><muws-p1-xs:eventId>http://pda.rim/TestDevice</muws-p1-xs:eventId><muws-p1-xs:SourceComponent><wsa:ComponentAddress
 
xmlns:wsa=\"http://schemas.xmlsoap.org/ws/2003/03/addressing\";><wsa:Address>http://IBMWSDMINTEROP:4400/ettk/wsdm/services/ADMNotifyPort</wsa:Address></wsa:ComponentAddress></muws-p1-xs:SourceComponent><muws-p2-xs:Situation
 
xmlns:muws-p2-xs=\"http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part2.xsd\";><muws-p2-xs:SituationCategory><muws-p2-xs:ReportSituation>Compliance
 
changed</muws-p2-xs:ReportSituation></muws-p2-xs:SituationCategory></muws-p2-xs:Situation><wsrp:PropertyValueChangeNotification
 xmlns:bbry=\"http://pda.rim\"; 
xmlns:wsrp=\"http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl\";><wsrp:oldvalue><bbry:Compliance
 
xmlns=\"http://pda.rim\";>unknown</bbry:Compliance></wsrp:oldvalue><wsrp:newvalue><bbry:Compliance
 
xmlns=\"http://pda.rim\";>Red</bbry:Compliance></wsrp:newvalue></wsrp:PropertyValueChangeNotification><bbry:Device
 
xmlns:bbry=\"http://pda.rim\";>TestDevice</bbry:Device></muws-p1-xs:ManagementEvent></Message></wsnt:NotificationMessage></wsnt:Notify></soapenv:Body></soapenv:Envelope>";
 
+       private static String xmlYellowText="<soapenv:Envelope 
xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\"; 
xmlns:soapenc=\"http://schemas.xmlsoap.org/soap/encoding/\"; 
xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\"; 
xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"; 
xmlns:wsa=\"http://schemas.xmlsoap.org/ws/2003/03/addressing\";><soapenv:Header><wsa:MessageID>uuid:5DD8308D-0104-4000-E000-0700C0A80128</wsa:MessageID><wsa:To
 
xmlns:add=\"http://schemas.xmlsoap.org/ws/2003/03/addressing\";>http://12.35.246.160:8001/bogasendpoint</wsa:To><wsa:Action>http://docs.oasis-open.org/wsn/2004/06/WS-BaseNotification/Notify</wsa:Action></soapenv:Header><soapenv:Body><wsnt:Notify
 
xmlns:wsnt=\"http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd\";><wsnt:NotificationMessage><Topic
 Dialect=\"http://docs.oasis-open.org/wsn/2004/06/TopicExpression/Simple\"; 
xmlns=\"http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd\";
 xmlns:simple55NS=\"rim\">simple55NS:CodeModuleSize</Topic><ProducerReference 
xmlns=\"http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd\";
 
xmlns:wsa=\"http://schemas.xmlsoap.org/ws/2003/03/addressing\";><wsa:Address>http://IBMWSDMINTEROP:4400/ettk/wsdm/services/ADMNotifyPort</wsa:Address></ProducerReference><Message
 
xmlns=\"http://docs.oasis-open.org/wsn/2004/06/wsn-WS-BaseNotification-1.2-draft-01.xsd\";><muws-p1-xs:ManagementEvent
 
xmlns:muws-p1-xs=\"http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part1.xsd\";><muws-p1-xs:reportTime>2005-06-08T21:25:46.193Z</muws-p1-xs:reportTime><muws-p1-xs:eventId>http://pda.rim/TestDevice</muws-p1-xs:eventId><muws-p1-xs:SourceComponent><wsa:ComponentAddress
 
xmlns:wsa=\"http://schemas.xmlsoap.org/ws/2003/03/addressing\";><wsa:Address>http://IBMWSDMINTEROP:4400/ettk/wsdm/services/ADMNotifyPort</wsa:Address></wsa:ComponentAddress></muws-p1-xs:SourceComponent><muws-p2-xs:Situation
 
xmlns:muws-p2-xs=\"http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part2.xsd\";><muws-p2-xs:SituationCategory><muws-p2-xs:ReportSituation>Compliance
 
changed</muws-p2-xs:ReportSituation></muws-p2-xs:SituationCategory></muws-p2-xs:Situation><wsrp:PropertyValueChangeNotification
 xmlns:bbry=\"http://pda.rim\"; 
xmlns:wsrp=\"http://docs.oasis-open.org/wsrf/2004/06/wsrf-WS-ResourceProperties-1.2-draft-01.wsdl\";><wsrp:oldvalue><bbry:Compliance
 
xmlns=\"http://pda.rim\";>unknown</bbry:Compliance></wsrp:oldvalue><wsrp:newvalue><bbry:Compliance
 
xmlns=\"http://pda.rim\";>Yellow</bbry:Compliance></wsrp:newvalue></wsrp:PropertyValueChangeNotification><bbry:Device
 
xmlns:bbry=\"http://pda.rim\";>TestDevice</bbry:Device></muws-p1-xs:ManagementEvent></Message></wsnt:NotificationMessage></wsnt:Notify></soapenv:Body></soapenv:Envelope>";
+       /*
+        * @see TestCase#setUp()
+        */
+       protected void setUp() throws Exception {
+               super.setUp();
+       }
+
+       /*
+        * @see TestCase#tearDown()
+        */
+       protected void tearDown() throws Exception {
+               super.tearDown();
+       }
+       
+       public void testColorExtraction(){
+               BlackBerryApp app = new BlackBerryApp();
+               assertEquals("Red",app.getColorFromMessage(xmlRedText));
+               assertEquals("Yellow",app.getColorFromMessage(xmlYellowText));
+       }
+
+}

Copied: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJPanel.java
 (from r189764, 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJFrame.java)
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJPanel.java?p2=incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJPanel.java&p1=incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJFrame.java&r1=189764&r2=189973&rev=189973&view=diff
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJFrame.java
 (original)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/LocationJPanel.java
 Fri Jun 10 08:15:25 2005
@@ -1,12 +1,12 @@
 package org.apache.interop.wcdisplay;
 
-import java.awt.BorderLayout;
 import java.awt.FlowLayout;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
 
 import javax.swing.BorderFactory;
 import javax.swing.ImageIcon;
+import javax.swing.JFrame;
 import javax.swing.JLabel;
 import javax.swing.JTextField;
 import javax.swing.JToggleButton;
@@ -14,6 +14,10 @@
 import javax.swing.border.BevelBorder;
 
 
+import javax.swing.JPanel;
+
+import org.apache.interop.smgr.ConnectionListener;
+import org.apache.wsdm.interop.wcm.impl.ui.MessagesJPanel;
 /**
 * This code was generated using CloudGarden's Jigloo
 * SWT/Swing GUI Builder, which is free for non-commercial
@@ -28,88 +32,118 @@
 * for any corporate or commercial purpose.
 * *************************************
 */
-public class LocationJFrame extends javax.swing.JFrame {
+public class LocationJPanel extends javax.swing.JPanel {
        private JTextField jTextFieldRid;
        private JToggleButton jToggleButtonGo;
        private JLabel jLabelRid;
        private JTextField jTextFieldUrl;
        private JLabel jLabelLocation;
        private JLabel jLabelAniStatus;
+       private ImageIcon stillIcon=new 
ImageIcon(getClass().getClassLoader().getResource("org/apache/interop/wcdisplay/hp-still.gif"));
+       private ImageIcon aniIcon=new 
ImageIcon(getClass().getClassLoader().getResource("org/apache/interop/wcdisplay/hp-ani.gif"));
+       private ConnectionListener listener;
 
        /**
        * Auto-generated main method to display this JFrame
        */
        public static void main(String[] args) {
-               LocationJFrame inst = new LocationJFrame();
-               inst.setVisible(true);
+               
+               JFrame frame = new JFrame();
+               LocationJPanel inst = new LocationJPanel();
+               frame.getContentPane().add(inst);
+               frame.pack();
+               frame.show();
+
+               //inst.setVisible(true);
        }
        
-       public LocationJFrame() {
+       public LocationJPanel() {
                super();
                initGUI();
        }
        
        private void initGUI() {
                try {
-                       setSize(400, 300);
-                       
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
+                       this.setSize(100, 100);
                } catch (Exception e) {
                        e.printStackTrace();
                }
                FlowLayout jPanel1Layout = new FlowLayout();
-               setLayout(jPanel1Layout);
-               setBackground(new java.awt.Color(239,239,239));
+               this.setBackground(new java.awt.Color(239,239,239));
+               FlowLayout thisLayout = new FlowLayout();
+               thisLayout.setAlignment(FlowLayout.LEFT);
+               this.setLayout(thisLayout);
+               this.setPreferredSize(new java.awt.Dimension(725, 61));
                jPanel1Layout.setAlignment(FlowLayout.LEFT);
                //this.getContentPane().add(jPanelLocation, BorderLayout.NORTH);
                jPanel1Layout.setAlignment(FlowLayout.LEFT);
                {
                        jLabelLocation = new JLabel();
-                       add(jLabelLocation);
+                       this.add(jLabelLocation);
                        jLabelLocation.setText("Location:");
                }
                {
                        jTextFieldUrl = new JTextField();
-                       add(jTextFieldUrl);
+                       this.add(jTextFieldUrl);
                        jTextFieldUrl
                                
.setText("http://12.35.246.160:8080/muse/services/WeatherClientConfig";);
                }
                {
                        jLabelRid = new JLabel();
-                       add(jLabelRid);
+                       this.add(jLabelRid);
                        jLabelRid.setText("RId:");
                }
                {
                        jTextFieldRid = new JTextField();
-                       add(jTextFieldRid);
+                       this.add(jTextFieldRid);
                        jTextFieldRid.setText("weather-client-config-1");
                }
                {
                        jToggleButtonGo = new JToggleButton();
-                       add(jToggleButtonGo);
+                       this.add(jToggleButtonGo);
                        jToggleButtonGo.setText("Connect");
                        jToggleButtonGo.addActionListener(new ActionListener() {
                                public void actionPerformed(ActionEvent evt) {
                                        System.out
                                                
.println("jToggleButtonGo.actionPerformed, event="
                                                        + evt);
-                       //                      
setConnectionState(jToggleButtonGo.isSelected());
+                                       handleConnect();
                                }
                        });
                }
                {
                        jLabelAniStatus = new JLabel();
-                       add(jLabelAniStatus);
+                       this.add(jLabelAniStatus);
                        jLabelAniStatus.setIcon(new 
ImageIcon(getClass().getClassLoader().getResource("org/apache/interop/wcdisplay/hp-still.gif")));
                        
jLabelAniStatus.setBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED, 
null, null, null, null));
                }
 
        }
+       /**
+        * 
+        */
+       protected void handleConnect() {
+               if(jToggleButtonGo.isSelected()){
+                                       jLabelAniStatus.setIcon(aniIcon);
+                                       if(listener!=null)
+                                               listener.onConnect();
+               } else {
+                                       jLabelAniStatus.setIcon(stillIcon);
+                                       if(listener!=null)
+                                               listener.onDisconnect();
+               }
+               
+       }
+
        public String getUrl(){
                return jTextFieldUrl.getText();
        }
        
        public String getRid(){
                return jTextFieldRid.getText();
+       }
+       public void setConnectionListener(ConnectionListener listener){
+               this.listener=listener;
        }
 
 }

Modified: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/WcDisplayApp.java
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/WcDisplayApp.java?rev=189973&r1=189972&r2=189973&view=diff
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/WcDisplayApp.java
 (original)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcdisplay/WcDisplayApp.java
 Fri Jun 10 08:15:25 2005
@@ -17,6 +17,7 @@
 import javax.swing.WindowConstants;
 import javax.swing.border.BevelBorder;
 
+import org.apache.interop.smgr.ConnectionListener;
 import org.apache.ws.muws.interop.client.FaultException;
 import org.apache.wsdm.interop.wcm.impl.ui.MessagesJPanel;
 import org.apache.wsdm.interop.wcm.impl.ui.TemperatureJPanel;
@@ -36,7 +37,7 @@
 * for any corporate or commercial purpose.
 * *************************************
 */
-public class WcDisplayApp extends javax.swing.JFrame {
+public class WcDisplayApp extends javax.swing.JFrame implements 
ConnectionListener {
        private JPanel jPanelLocation;
        private JSplitPane jSplitPaneGraphMessage;
        private TemperatureJPanel temperatureJPanel1;
@@ -238,5 +239,20 @@
                        
temperatureJPanel1.addMeasurement(m_connection.getTemperature());
                }
                
+       }
+
+       /* (non-Javadoc)
+        * @see org.apache.interop.smgr.ConnectionListener#onConnect()
+        */
+       public void onConnect() {
+               setConnectionState(true);
+               
+       }
+
+       /* (non-Javadoc)
+        * @see org.apache.interop.smgr.ConnectionListener#onDisconnect()
+        */
+       public void onDisconnect() {
+               setConnectionState(false);              
        }       
 }

Modified: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcmgr/WcMgrApp.java
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcmgr/WcMgrApp.java?rev=189973&r1=189972&r2=189973&view=diff
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcmgr/WcMgrApp.java
 (original)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/interop/wcmgr/WcMgrApp.java
 Fri Jun 10 08:15:25 2005
@@ -3,6 +3,36 @@
 import javax.swing.WindowConstants;
 
 
+import org.apache.interop.smgr.ConnectionListener;
+import org.apache.interop.smgr.MessageListener;
+import org.apache.interop.smgr.MessageWorker;
+import org.apache.interop.smgr.NotificationListener;
+import org.apache.interop.wcdisplay.LocationJPanel;
+import org.apache.ws.addressing.EndpointReference;
+import org.apache.ws.addressing.XmlBeansEndpointReference;
+import org.apache.ws.addressing.v2004_08_10.AddressingConstants;
+import org.apache.ws.muws.interop.client.FaultException;
+import org.apache.ws.muws.interop.client.ResourceStub;
+import org.apache.ws.muws.interop.client.WcmMessage;
+import org.apache.wsdm.interop.wcm.impl.WcImpl;
+import org.apache.wsdm.interop.wcm.impl.WsImpl;
+import org.apache.wsdm.interop.wcm.impl.ui.MessagesJPanel;
+import org.apache.wsdm.interop.wcm.impl.ui.StatusJPanel;
+import org.apache.wsdm.interop.wcm.model.IWc;
+import org.apache.wsdm.interop.wcm.model.IWs;
+import org.apache.xmlbeans.XmlException;
+import org.apache.xmlbeans.XmlObject;
+
+import javax.swing.JSplitPane;
+import javax.xml.namespace.QName;
+
+import java.awt.BorderLayout;
+import java.io.IOException;
+import java.util.Vector;
+
+import org.apache.interop.smgr.SubsciberInfoJPanel;
+import 
org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.RelationshipParticipantType;
+import 
org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.impl.RelationshipTypeImpl;
 /**
 * This code was generated using CloudGarden's Jigloo
 * SWT/Swing GUI Builder, which is free for non-commercial
@@ -17,7 +47,17 @@
 * for any corporate or commercial purpose.
 * *************************************
 */
-public class WcMgrApp extends javax.swing.JFrame {
+public class WcMgrApp extends javax.swing.JFrame  implements 
ConnectionListener,MessageListener {
+       private SubsciberInfoJPanel locationJPanel;
+       private MessagesJPanel messagesJPanel1;
+       private StatusJPanel statusJPanel;
+       private JSplitPane jSplitPane;
+       private MessageWorker m_messageWorker;
+       private NotificationListener m_listener;
+       private StringBuffer m_buffer=new StringBuffer();
+       private ResourceStub m_resource;
+       private static final QName RELATIONSHIP_QNAME=new 
QName("http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part2.xsd","Relationship";);
+       private static final QName CAPABILITY_QNAME=new 
QName("http://docs.oasis-open.org/wsdm/2004/12/muws/wsdm-muws-part2.xsd","ManageabilityCapability";);
 
        /**
        * Auto-generated main method to display this JFrame
@@ -30,15 +70,122 @@
        public WcMgrApp() {
                super();
                initGUI();
+               locationJPanel.setConnectionListener(this);
+               
locationJPanel.setResourceUrl("http://12.35.246.160:8080/muse/services/WeatherStationDir";);
+               locationJPanel.setTopicNamespace("");
+               locationJPanel.getTopicName("");
+               
locationJPanel.setNotificationLister("http://12.35.246.160:8001/bogas";);
        }
        
        private void initGUI() {
                try {
-                       this.setSize(613, 605);
+                       this.setSize(725, 605);
                        
setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
+                       this.setTitle("WCMgr ");
+                       {
+                               locationJPanel = new SubsciberInfoJPanel();
+                               this.getContentPane().add(locationJPanel, 
BorderLayout.NORTH);
+                       }
+                       {
+                               jSplitPane = new JSplitPane();
+                               this.getContentPane().add(jSplitPane, 
BorderLayout.CENTER);
+                               
jSplitPane.setOrientation(JSplitPane.VERTICAL_SPLIT);
+                               {
+                                       statusJPanel = new StatusJPanel();
+                                       jSplitPane.add(statusJPanel, 
JSplitPane.TOP);
+                               }
+                               {
+                                       messagesJPanel1 = new MessagesJPanel();
+                                       jSplitPane.add(messagesJPanel1, 
JSplitPane.BOTTOM);
+                               }
+                       }
                } catch (Exception e) {
                        e.printStackTrace();
                }
+       }
+
+       /* (non-Javadoc)
+        * @see org.apache.interop.smgr.ConnectionListener#onConnect()
+        */
+       public void onConnect() {
+               
+               // Start TCP Listener and A worker that will deliver received 
notifications 
+               m_messageWorker = new MessageWorker(this,m_buffer);
+               m_listener = new NotificationListener(8000,600000,m_buffer);
+               try {
+                       m_messageWorker.start();
+                       m_listener.start();
+               } catch (IOException e) {
+                       // TODO Auto-generated catch block
+                       e.printStackTrace();
+               }
+
+               // Extact A model from the Wsdm Relationsship of
+               // The directory
+               try {
+                       getModelFromRelationship();
+               } catch (XmlException e1) {
+                       // TODO Auto-generated catch block
+                       e1.printStackTrace();
+               } catch (FaultException e1) {
+                       // TODO Auto-generated catch block
+                       e1.printStackTrace();
+               }
+               
+               // Request to receive notifications from both weather 
+               // stations of their operational status
+               String NotificationURL="http://";;
+               //EndpointReference response = 
m_resource.subscribe("",RELATIONSHIP_QNAME);
+
+               
+       }
+
+       /**
+        * @throws XmlException
+        * @throws FaultException
+        * 
+        */
+       private void getModelFromRelationship() throws XmlException, 
FaultException {
+                       // Query Relationships and build model
+                       m_resource = new ResourceStub( 
getEpr(locationJPanel.getResourceUrl(),null) );
+                       XmlObject[] relationArry = 
m_resource.getResourceProperty(RELATIONSHIP_QNAME);
+                       Vector model=new Vector();
+                       IWc wc=new WcImpl(0,"Wc",null);
+                       model.add(wc);
+
+                       for (int i = 0; i < relationArry.length; i++) {
+                               RelationshipTypeImpl relationship = 
(RelationshipTypeImpl) relationArry[i];
+                               IWs ws1=new 
WsImpl(relationship,locationJPanel.getNotificationLister(),new 
QName(locationJPanel.getTopicNamespace(),locationJPanel.getTopicName()));
+                               model.add(ws1);
+                       }
+                       
+                       statusJPanel.setModel((IWs[]) model.toArray(new 
IWs[0]));               
+
+       }
+
+       /* (non-Javadoc)
+        * @see org.apache.interop.smgr.ConnectionListener#onDisconnect()
+        */
+       public void onDisconnect() {
+               
+               m_messageWorker.stop();
+               m_listener.stop();
+
+       }
+
+       /* (non-Javadoc)
+        * @see 
org.apache.interop.smgr.MessageListener#onMessage(java.lang.String)
+        */
+       public void onMessage(String messageText) {
+               // Create a new Message in the messages window
+               messagesJPanel1.setMessage(new WcmMessage(messageText, ""));
+               
+       }
+       private EndpointReference getEpr(String URL, String Rid) throws 
XmlException{
+               XmlBeansEndpointReference x=new 
XmlBeansEndpointReference(URL,AddressingConstants.NSURI_ADDRESSING_SCHEMA);
+               if(Rid!=null)
+                       x.setReferenceProperties(new 
XmlObject[]{(XmlObject)XmlObject.Factory.parse("<svr:ResourceIdentifier 
xmlns:svr=\"http://wsdmdemo.org/service/weather-client-config\";>"+Rid+"</svr:ResourceIdentifier>")});
              
+               return x;               
        }
 
 }

Modified: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/impl/WsImpl.java
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/impl/WsImpl.java?rev=189973&r1=189972&r2=189973&view=diff
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/impl/WsImpl.java
 (original)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/impl/WsImpl.java
 Fri Jun 10 08:15:25 2005
@@ -4,9 +4,19 @@
  */
 package org.apache.wsdm.interop.wcm.impl;
 
-import org.apache.wsdm.interop.wcm.model.IWs;
+import javax.xml.namespace.QName;
 
-import sun.rmi.runtime.GetThreadPoolAction;
+import org.apache.ws.addressing.EndpointReference;
+import org.apache.ws.addressing.XmlBeansEndpointReference;
+import org.apache.ws.muws.interop.client.FaultException;
+import org.apache.ws.muws.interop.client.ResourceStub;
+import org.apache.wsdm.interop.wcm.model.IWs;
+import org.apache.xmlbeans.XmlObject;
+import org.apache.xmlbeans.impl.values.XmlStringImpl;
+import 
org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.RelationshipParticipantType;
+import 
org.oasisOpen.docs.wsdm.x2004.x12.muws.wsdmMuwsPart2.impl.RelationshipTypeImpl;
+import org.xmlsoap.schemas.ws.x2004.x08.addressing.AttributedURI;
+import org.xmlsoap.schemas.ws.x2004.x08.addressing.EndpointReferenceType;
 
 
 /**
@@ -18,10 +28,61 @@
 public class WsImpl implements IWs {
        int status;
        String name;
-       IWs backup;
        double temp;
+       private EndpointReference wsEpr;
+       private static final QName weatherStationNameQname= new 
QName("http://wsdmdemo.org/service/weather-station";, "Name", "tns");
+       private String listenerURL;
+       private QName topicQName;
+
+       public WsImpl(RelationshipTypeImpl relationship,String 
listenerURL,QName topicQName){
+               this.listenerURL=listenerURL;
+               this.topicQName=topicQName;
+               RelationshipParticipantType participant = 
relationship.getParticipantArray(1);
+               EndpointReferenceType eprt = 
participant.getManageabilityEndpointReferenceArray(0);
+               AttributedURI eprtAddr = eprt.getAddress();
+               String addr = eprtAddr.getStringValue();
+               
addr=addr.replaceAll("192\\.168\\.0\\.20","12\\.35\\.246\\.160");
+               eprtAddr.setStringValue(addr);
+               wsEpr=(EndpointReference)new XmlBeansEndpointReference(eprt);
+               getNameFromEpr();               
+               requestNotificationFromEpr();
+       }
        
        /**
+        * 
+        */
+       private void requestNotificationFromEpr() {
+               ResourceStub resource = new ResourceStub( wsEpr );
+               //EndpointReference response = 
resource.subscribe(subsciberInfoJPanel.getNotificationLister(),new 
QName(subsciberInfoJPanel.getTopicNamespace(),subsciberInfoJPanel.getTopicName()));
+
+               
+       }
+
+       /**
+        * @throws FaultException
+        * 
+        */
+       private void getNameFromEpr() {
+               
+               
+               ResourceStub stub = new ResourceStub(wsEpr);
+               XmlObject[] wsNameArry;
+               try {
+                       wsNameArry = 
stub.getResourceProperty(weatherStationNameQname);
+               } catch (FaultException e) {
+                       this.name="Unknown";
+                       return;
+               }
+        catch (RuntimeException e) {
+               this.name="Unknown";
+               return;
+       }
+               XmlStringImpl wsName = (XmlStringImpl)wsNameArry[0];
+               this.name=wsName.getStringValue();
+               System.out.println();
+       }
+
+       /**
         * @param status
         * @param name
         * @param backup
@@ -30,7 +91,6 @@
                super();
                this.status = status;
                this.name = name;
-               this.backup = backup;
        }
        
        /* (non-Javadoc)
@@ -64,21 +124,6 @@
                return name;
        }
 
-       /* (non-Javadoc)
-        * @see com.hp.wsdm.interop.wcm.IWs#getBackup()
-        */
-       public IWs getBackup() {
-               
-               return backup;
-       }
-
-       /* (non-Javadoc)
-        * @see 
com.hp.wsdm.interop.wcm.IWs#setBackup(com.hp.wsdm.interop.wcm.IWs)
-        */
-       public void setBackup(IWs backup) {
-               this.backup=backup;
-               
-       }
 
        public String toString() {
                

Modified: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/model/IWs.java
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/model/IWs.java?rev=189973&r1=189972&r2=189973&view=diff
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/model/IWs.java
 (original)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/model/IWs.java
 Fri Jun 10 08:15:25 2005
@@ -13,8 +13,6 @@
        public int getStatus();
        public void setName(String name);
        public String getName();
-       public IWs getBackup();
-       public void setBackup(IWs backup);
        public double getTemperature();
        public void setTemperature(double temp);
 }

Modified: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/InteropSimulatorTest.java
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/InteropSimulatorTest.java?rev=189973&r1=189972&r2=189973&view=diff
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/InteropSimulatorTest.java
 (original)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/InteropSimulatorTest.java
 Fri Jun 10 08:15:25 2005
@@ -57,7 +57,7 @@
                IWs[] model = sim.buildModel(2,10,new 
int[]{1,0,1,1,1,0,1,0,1,0});
                assertEquals(10,model.length);
                assertTrue(model[0] instanceof IWc);
-               assertEquals(model[1],model[9].getBackup());
+               //assertEquals(model[1],model[9].getBackup());
        }
 
 }

Modified: 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/StatusSimulator.java
URL: 
http://svn.apache.org/viewcvs/incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/StatusSimulator.java?rev=189973&r1=189972&r2=189973&view=diff
==============================================================================
--- 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/StatusSimulator.java
 (original)
+++ 
incubator/muse/trunk/src/ieeedemo/client/src/org/apache/wsdm/interop/wcm/simulator/StatusSimulator.java
 Fri Jun 10 08:15:25 2005
@@ -44,7 +44,7 @@
                IWs ws1=new WsImpl(0,"Ws1",null);
                IWs ws2=new WsImpl(0,"Ws2",ws1);
                IWs ws3=new WsImpl(0,"Ws3",ws2);
-               ws1.setBackup(ws3);
+               //ws1.setBackup(ws3);
                IWc wc=new WcImpl(0,"Wc",ws1);
                mp.setModel(new IWs[]{wc,ws1,ws2,ws3});         
 



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to