Download presentation
Presentation is loading. Please wait.
Published byMelvyn Stanley Modified over 9 years ago
1
Barry Atkins Heather Kreger Steve Graham Micro Managing – Implementing WSDM in the Small Tiny WSDM Demo
2
© 2004 IBM Corporation WS-Resource framework Page 2 Agenda The Demo Motivation Tiny WSRF - Resource Properties Tiny WS-Notifications – Base Notifications Tiny WSDM WSDM Management Event Identity How Hard was That?
3
© 2004 IBM Corporation WS-Resource framework Page 3 Motivation Show that WSDM and its requisite specifications can be implemented in resource constrained devices WSDM composes for minimal WSDM, WS-Addressing, WSRF, WS-N were designed to be composable to allow for minimal implementation requirements in simple or constrained implementations WDSM composes for the enterprise WSDM, WS-Addressing, WSRF, WS-N also provide composable functionality required to support complex, large scale systems.
4
© 2004 IBM Corporation WS-Resource framework Page 4 Topology BES Server WAS 5.1 (Wireless GW) 1 2 3 4 (1)Blackberry connects to Wireless GW via BES tunneling (2)Client “discovers” Blackberry via Wireless GW (3)WSRF, WSN message exchanges to Wireless GW (proxy) (4)WSRF, WSN message exchanges to Blackberry WSRF and WSN Endpoint
5
© 2004 IBM Corporation WS-Resource framework Page 5 Functionality “port” of ETTK WSRF-ResourceProperties GetResourceProperties -Retrieve value from Blackberry Date, Time, Serial#, BatteryLevel, BatteryStatus, AllocatedStorage, FreeStorage, total code module size (0(n) calc) GetMultipleResourceProperties GetResourcePropertiesDocument -Equivalent to WS-Transfer Get SetResourceProperties (update) -Modify value of Blackberry Date, Time, Color (this faults) WSRF-BaseFaults Blackberry GUI “port” of ETTK WSN NotificationProducer -Just subscribe request/response -ShowSubscriptions Detect situation and format message for -Date change and time change (from WSRF Set) Drive notification message to consumer via EPR JVM KSoap (40k) WSRF (19k) WSN (32k) WSDM (12k) 102K
6
© 2004 IBM Corporation WS-Resource framework Page 6 Cost 1 developer 25 days Developer had good knowledge of Blackberry programming Good knowledge of ETTK No background with WSRF, WS-N, or WSDM
7
© 2004 IBM Corporation WS-Resource framework Page 7 Implementation The demo consists of: Running on the Server device. Web interface Web services running on WAS 6.0 Running on the Blackberry device. Client code consisting of a tiny soap engine Soap server WirelessDeviceGateway web service EndpointReference for the TinyWSRF implementation Forwards the requests to the various devices via a variety of device-specific transports The device is specified by a device property contained in the soap header. (wsa reference property)
8
© 2004 IBM Corporation WS-Resource framework Page 8 Tiny WSRF
9
© 2004 IBM Corporation WS-Resource framework Page 9 Tiny WSRF GetResourceProperty
10
© 2004 IBM Corporation WS-Resource framework Page 10 Tiny WSRF – GetMultipleResourceProperties
11
© 2004 IBM Corporation WS-Resource framework Page 11 Tiny WSRF - SetResourceProperty
12
© 2004 IBM Corporation WS-Resource framework Page 12 Tiny WSRF GetResourcePropertiesDocument
13
© 2004 IBM Corporation WS-Resource framework Page 13 Tiny Notifications - Subscriptions Subscriptions may be created for the following topics : Date_Change - notification is performed when the device's date is changed Inbox_Change - notification is performed when the device's email inbox is changed (email added or deleted) Outbox_Change - notification is performed when the device's email inbox is changed (email added or deleted) CodeModuleSize_Change - notification is performed when the code size for all installed modules changes.
14
© 2004 IBM Corporation WS-Resource framework Page 14 Tiny Notifications - Subscribe
15
© 2004 IBM Corporation WS-Resource framework Page 15 Tiny Notifications - Unsubscribe
16
© 2004 IBM Corporation WS-Resource framework Page 16 Tiny Notifications - Unsubscribe
17
© 2004 IBM Corporation WS-Resource framework Page 17 Tiny Notifications - Unsubscribe
18
© 2004 IBM Corporation WS-Resource framework Page 18 Tiny Notifications – ShowSubscriptions
19
© 2004 IBM Corporation WS-Resource framework Page 19 Tiny Notifications – Seeing Notifications
20
© 2004 IBM Corporation WS-Resource framework Page 20 Tiny Notifications – Notification received
21
© 2004 IBM Corporation WS-Resource framework Page 21 It’s a WSDM Management Event! http://9.27.80.182:4400/WSRF4PDA_V6/services/WSRFWirelessDeviceGateway 4:2100000a RIM2100000a BlackBerry Device 2100000a ReportSituation Date change occurred http://rimpda/RIM2100000a/20041225175424660 2004-12-25T17:54:24.660Z
22
© 2004 IBM Corporation WS-Resource framework Page 22 Tiny WSDM The WSDM demo consists of the following scenario : 1. A subscription is created for the topic "CodeModuleSize" on the Blackberry. 2. An application is installed on the device, triggering a notification. 3. The NotificationConsumer receives the notification, and asks the device for a list of installed applications. 4. The list is compared to a known list of legal applications (via policy). 5. A request to remove the offending application(s) is sent to the device, which uninstalls the requested application(s).
23
© 2004 IBM Corporation WS-Resource framework Page 23 Tiny WSDM – Subscribe to CodeModuleSizeChange
24
© 2004 IBM Corporation WS-Resource framework Page 24 TinyWSDM – Load a New Application - HelloWorld At: http://barryxplaptop:4400/WSRF4PDA_V6/jad.htmlhttp://barryxplaptop:4400/WSRF4PDA_V6/jad.html
25
© 2004 IBM Corporation WS-Resource framework Page 25 Tiny WSDM – Get Link to New Application
26
© 2004 IBM Corporation WS-Resource framework Page 26 TinyWSDM – Download New Application
27
© 2004 IBM Corporation WS-Resource framework Page 27 TinyWSDM – Application Installed!
28
© 2004 IBM Corporation WS-Resource framework Page 28 TinyWSDM –Notification Received & Application Removed
29
© 2004 IBM Corporation WS-Resource framework Page 29 TinyWSDM – Application Removed Device limitation: Icons on the Blackberry are only removed when the device is rebooted The HelloWorld application appears to remain installed becausethe icon appears on the device The HelloWorld application is not listed in the list of installed applications
30
© 2004 IBM Corporation WS-Resource framework Page 30 How hard was that? The device code consists of 2 components : A server component, and a UI component. The server component runs automatically in the background. It connects to the WirelessDeviceGateway, and identifies itself using the device’s PIN. The UI component provides simple feedback and configuration of the server component. It displays messages as they are received from the WirelessDeviceGateway, as a result of GetResourceProperty, etc requests. (not necessary)
31
© 2004 IBM Corporation WS-Resource framework Page 31 How much code? Code size written : 4000 lines Total compiled code size is 102Kb Blackbarry: 4 main packages, ksoap2.cod 62,620 (library)(the soap engine/xml parser) TinyWSRF.cod19,724 (library) (code WSRF implementation) WSRFController.cod8,772 (application) WSRFServer.cod12,880 (application) Server Code Module which handles the device-specific transport of the SOAP Envelope for the data transport for several different devices (WiFi, SMS, cellular, etc) that is transparent to the caller. Various JSPs & servlets for running the demo.
32
© 2004 IBM Corporation WS-Resource framework Page 32 Nitty Gritty Details package com.ibm.tinywsrf – 1448 lines 1,296 DocServer.java 2,659 EndpointReference.java 1,827 Notification.java 1,365 NotificationManager.java 10,089 NotificationMessage.java 2,765 NotificationProducer.java 951 ResourceProperties.java 9,284 Resources.java 3,232 Subscription.java 7,124 SubscriptionManager.java 5,067 Utils.java 4,610 WSConstants.java 2,294 WSRFConstants.java package com.ibm.wsrpcontroller- - 760 lines 962 Controller.java 6,146 mainApp.java 3,568 SubscriptionsScreen.java 2,558 WDGSetupScreen.java 2,677 WSRPControllerScreen.java package com.ibm.tinywsrfserver - 1019 lines 2,005 AppWatcher.java 19,584 CommandProcessor.java 1,931 DateWatcher.java 3,801 MailWatcher.java 5,404 mainApp.java 2,270 SOAPProcessor.java 107 UIListener.java 469 Watcher.java package com.ibm.wireless.rim - 828 lines 2,257 Marshaller.java 717 MarshallObject.java 682 Persistant.java 472 SOAPListener.java 11,395 SOAPServer.java 1,504 WDGSetup.java 2,417 WebService.java 4,136 WebServiceProxy.java
33
© 2004 IBM Corporation WS-Resource framework Page 33 Questions
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.