edu.wisc.trace.urcsdk.client.facade
Class FacadeForJs

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by java.awt.Panel
              extended by java.applet.Applet
                  extended by edu.wisc.trace.urcsdk.client.facade.FacadeForJs
All Implemented Interfaces:
IClientListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, javax.accessibility.Accessible

public class FacadeForJs
extends java.applet.Applet
implements IClientListener

FacadeForJs A sample implementation for JavaScript based User Interface to the URC Client

Created on: 1st June, 2006
Known bugs: None
Thread safe: Yes

Version:
$Revision: 1.19 $
Author:
Parikshit Thakur & team
See Also:
Serialized Form

Nested Class Summary
static class FacadeForJs.SocketElementListener
          Special purpose Listener for Listening to individual SocketElements
 
Nested classes/interfaces inherited from class java.applet.Applet
java.applet.Applet.AccessibleApplet
 
Nested classes/interfaces inherited from class java.awt.Panel
java.awt.Panel.AccessibleAWTPanel
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static long endTimeTemp
           
static long startTimeTemp
           
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
FacadeForJs()
           
 
Method Summary
static void addTunParameter(java.lang.String name, java.lang.String value)
          Add a new Parameter to the TunParameterMap
static void bindToClientTun(java.lang.String tunClassName)
          Bind to Client TUN for communicating with Target Devices
static void closeSession(java.lang.String sessionId)
          Closes session for the requested sessionId
static java.lang.String getElementIDs(java.lang.String sessionId)
          Returns an array of elementID's for the requested SessionID
static java.lang.String getElementRef(java.lang.String sessionId, java.lang.String elementId)
          Gets the ElementRef for the elementID
static java.lang.String getElementState(java.lang.String sessionId, java.lang.String elementId)
          Returns the present State of a UISocketElement
static java.lang.String getLabel(java.lang.String sessionId, java.lang.String elementId)
          Gets the Label for the particular elementID
static java.lang.String getLabelForCurrentValue(java.lang.String sessionId, java.lang.String elementId)
          Gets the Label for the Current Value of the elementID
static java.lang.String getLabelForSocket(java.lang.String targetId, java.lang.String socketName)
          Returns the label for the requested SocketID.
static java.lang.String getLabelForTarget(java.lang.String targetId)
          Returns Label for requested TargetID.
static java.lang.String getResource(java.lang.String sessionId, java.lang.String elementId, java.lang.String role)
          Indirect call to getResource
protected static java.lang.String getResource(java.lang.String targetId, java.lang.String elementRef, java.lang.String valueRef, java.lang.String opRef, java.lang.String role)
          Calls the getResource method of the ResourceManager
static java.lang.String getResourceForOperation(java.lang.String sessionId, java.lang.String elementId, java.lang.String role, java.lang.String opRef)
          Indirect call to getResource
static java.lang.String getResourceForSocket(java.lang.String targetID, java.lang.String socketURI, java.lang.String role)
          Returns the resource for the requested SocketID.
static java.lang.String getResourceForTarget(java.lang.String targetID, java.lang.String role)
          Returns Resource for requested TargetID.
static java.lang.String getResourceForValue(java.lang.String sessionId, java.lang.String elementId, java.lang.String role, java.lang.String valRef)
          Indirect call to getResource
static java.lang.String getSocketIdsForTarget(java.lang.String targetId, java.lang.String filterSocketURI)
          Returns an array of SocketID's for requested TargetID.
static java.lang.String getSocketNamesForTarget(java.lang.String targetId, java.lang.String filterSocketURI)
          Returns an array of SocketName's for requested TargetID.
static java.lang.String getSocketUriForName(java.lang.String targetId, java.lang.String socketName)
          Returns an array of URI's for requested SocketID.
static java.lang.String getTargetIDs(java.lang.String filterTargetURI)
          Returns an array of TargetID's for available Targets.
static java.lang.String getTargetUriForId(java.lang.String targetId)
          Returns the URI for requested TargetID.
static java.lang.String getValue(java.lang.String sessionId, java.lang.String elementId)
          Returns the value of the particular elementID
static java.lang.String getValues(java.lang.String sessionId)
          Returns an array of values for respective elementID's (as returned by getElementIDs) for the requested SessionID
 void init()
          init Called when Applet is initiated
static void initTunParameterSet()
          Clears the TunParameterMap.
static java.lang.String invokeCommandRequest(java.lang.String sessionId, java.lang.String elementId)
          Sends a request to the Target for invoking a command
static boolean isAvailable(java.lang.String sessionId, java.lang.String elementId)
          Check 'Available' property of SocketElement
static boolean isReadable(java.lang.String sessionId, java.lang.String elementId)
          Check 'Readable' property of SocketElement
static boolean isWritable(java.lang.String sessionId, java.lang.String elementId)
          Check 'Writable' property of SocketElement
static java.lang.String openSessionRequest(java.lang.String targetId, java.lang.String socketId)
          Opens a Session for the requested TargetId-SocketId
 void sessionAborted(ClientSession session)
          sessionAborted a method for handling when a Target aborts a particular Session
static boolean setElementStateRequest(java.lang.String sessionId, java.lang.String elementId, java.lang.String value)
          Sends a request to the Target for setting a new Value for a particular UISocketElement
static void setLogLevel(java.lang.String level)
          Set the Log Level externally
static void setResourceLanguage(java.lang.String prefValue)
          Sets preference value for Language
static void setResourcePreference(java.lang.String prefUri, java.lang.String prefValue)
          Sets one preference data for subsequent calls to getLabel, getResource, etc.
static void setResourcePreference(java.lang.String prefUri, java.lang.String[] prefValues)
          Sets one preference data for subsequent calls to getLabel, getResource, etc.
static void setResourceType(java.lang.String prefValue)
          Sets preference value for Type
 void targetDiscarded(TargetMirror target)
          targetDiscarded a method for handling when a Target is discarded on a TUN registered with the URC.
 void targetDiscovered(TargetMirror target)
          targetDiscovered a method for handling when a Target is discovered on a TUN registered with the URC.
static void unbindClientTun(java.lang.String tunClassName)
          UnBind From Client TUN
static void updateExecutable(java.lang.String sessionID, java.lang.String elementID, boolean execute)
          Calls javascript method to update the elements' executable status
static void updateReadable(java.lang.String sessionID, java.lang.String elementID, boolean read)
          Calls javascript method to update the elements' readable status
static void updateValue(java.lang.String sessionID, java.lang.String elementID, java.lang.String value)
          Called from the SocketElementListener when an update is received from the TUN
static void updateWritable(java.lang.String sessionID, java.lang.String elementID, boolean write)
          Calls javascript method to update the elements' writable status
 
Methods inherited from class java.applet.Applet
destroy, getAccessibleContext, getAppletContext, getAppletInfo, getAudioClip, getAudioClip, getCodeBase, getDocumentBase, getImage, getImage, getLocale, getParameter, getParameterInfo, isActive, newAudioClip, play, play, resize, resize, setStub, showStatus, start, stop
 
Methods inherited from class java.awt.Panel
addNotify
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getAlignmentX, getAlignmentY, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getInsets, getLayout, getListeners, getMaximumSize, getMinimumSize, getMousePosition, getPreferredSize, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paint, paintComponents, paramString, preferredSize, print, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, removeNotify, setComponentZOrder, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setFont, setLayout, transferFocusBackward, transferFocusDownCycle, update, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, contains, createImage, createImage, createVolatileImage, createVolatileImage, disable, disableEvents, dispatchEvent, enable, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphics, getGraphicsConfiguration, getHeight, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocation, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getSize, getToolkit, getTreeLock, getWidth, getX, getY, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isDoubleBuffered, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, printAll, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processKeyEvent, processMouseEvent, processMouseMotionEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, repaint, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, reshape, setBackground, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setEnabled, setFocusable, setFocusTraversalKeysEnabled, setForeground, setIgnoreRepaint, setLocale, setLocation, setLocation, setMaximumSize, setMinimumSize, setName, setPreferredSize, setSize, setSize, setVisible, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

startTimeTemp

public static long startTimeTemp

endTimeTemp

public static long endTimeTemp
Constructor Detail

FacadeForJs

public FacadeForJs()
Method Detail

init

public void init()
init Called when Applet is initiated

Overrides:
init in class java.applet.Applet

initTunParameterSet

public static void initTunParameterSet()
Clears the TunParameterMap. The TunParameterMap is a Map which is required to Bind to a particular TUN as mentioned by the requirements of the TUN.


addTunParameter

public static void addTunParameter(java.lang.String name,
                                   java.lang.String value)
Add a new Parameter to the TunParameterMap

Parameters:
name - Parameter Name
value - Parameter Value

bindToClientTun

public static void bindToClientTun(java.lang.String tunClassName)
Bind to Client TUN for communicating with Target Devices

Parameters:
tunClassName - Fully qualified Java Class Name

unbindClientTun

public static void unbindClientTun(java.lang.String tunClassName)
UnBind From Client TUN

Parameters:
tunClassName - Fully qualified Java Class Name

getTargetIDs

public static java.lang.String getTargetIDs(java.lang.String filterTargetURI)
Returns an array of TargetID's for available Targets.

Parameters:
filterTargetURI - String is a filter for selection of TargetID's
Returns:
String CSV Serialized Array of TargetId's

getTargetUriForId

public static java.lang.String getTargetUriForId(java.lang.String targetId)
Returns the URI for requested TargetID.

Parameters:
targetId - String
Returns:
String

getLabelForTarget

public static java.lang.String getLabelForTarget(java.lang.String targetId)
Returns Label for requested TargetID.

Parameters:
targetId - String
Returns:
String

getResourceForTarget

public static java.lang.String getResourceForTarget(java.lang.String targetID,
                                                    java.lang.String role)
Returns Resource for requested TargetID.

Parameters:
targetID - String
role - String
Returns:
String

getSocketIdsForTarget

public static java.lang.String getSocketIdsForTarget(java.lang.String targetId,
                                                     java.lang.String filterSocketURI)
Returns an array of SocketID's for requested TargetID.

Parameters:
targetId - String
filterSocketURI - String is a filter for selection of SocketID's
Returns:
String CSV Serialized Array of SocketId's

getSocketNamesForTarget

public static java.lang.String getSocketNamesForTarget(java.lang.String targetId,
                                                       java.lang.String filterSocketURI)
Returns an array of SocketName's for requested TargetID.

Parameters:
targetId - String
filterSocketURI - String is a filter for selection of SocketID's
Returns:
String CSV Serialized Array of SocketNames

getSocketUriForName

public static java.lang.String getSocketUriForName(java.lang.String targetId,
                                                   java.lang.String socketName)
Returns an array of URI's for requested SocketID.

Parameters:
targetId - String
socketName - String
Returns:
String

getLabelForSocket

public static java.lang.String getLabelForSocket(java.lang.String targetId,
                                                 java.lang.String socketName)
Returns the label for the requested SocketID.

Parameters:
targetId - String
socketName - String
Returns:
String

getResourceForSocket

public static java.lang.String getResourceForSocket(java.lang.String targetID,
                                                    java.lang.String socketURI,
                                                    java.lang.String role)
Returns the resource for the requested SocketID.

Parameters:
targetID - String
socketURI - String
role - String
Returns:
String

openSessionRequest

public static java.lang.String openSessionRequest(java.lang.String targetId,
                                                  java.lang.String socketId)
Opens a Session for the requested TargetId-SocketId

Parameters:
targetId - String
socketId - String
Returns:
SessionId String

closeSession

public static void closeSession(java.lang.String sessionId)
Closes session for the requested sessionId

Parameters:
sessionId - String

getElementIDs

public static java.lang.String getElementIDs(java.lang.String sessionId)
Returns an array of elementID's for the requested SessionID

Parameters:
sessionId - String
Returns:
String CSV Serialized Array of ElementId's

getValues

public static java.lang.String getValues(java.lang.String sessionId)
Returns an array of values for respective elementID's (as returned by getElementIDs) for the requested SessionID

Parameters:
sessionId - String
Returns:
String CSV Serialized Array of value's

getElementState

public static java.lang.String getElementState(java.lang.String sessionId,
                                               java.lang.String elementId)
Returns the present State of a UISocketElement

Parameters:
sessionId -
elementId -
Returns:
Present State/Value of the UISocketElement

setElementStateRequest

public static boolean setElementStateRequest(java.lang.String sessionId,
                                             java.lang.String elementId,
                                             java.lang.String value)
Sends a request to the Target for setting a new Value for a particular UISocketElement

Parameters:
sessionId -
elementId -
value -
Returns:
True if successful

invokeCommandRequest

public static java.lang.String invokeCommandRequest(java.lang.String sessionId,
                                                    java.lang.String elementId)
Sends a request to the Target for invoking a command

Parameters:
sessionId -
elementId -
Returns:
Present status of the invoked Command

getValue

public static java.lang.String getValue(java.lang.String sessionId,
                                        java.lang.String elementId)
Returns the value of the particular elementID

Parameters:
sessionId - String
elementId - String
Returns:
String

getElementRef

public static java.lang.String getElementRef(java.lang.String sessionId,
                                             java.lang.String elementId)
Gets the ElementRef for the elementID

Parameters:
sessionId - String
elementId - String
Returns:
String

updateValue

public static void updateValue(java.lang.String sessionID,
                               java.lang.String elementID,
                               java.lang.String value)
Called from the SocketElementListener when an update is received from the TUN

Parameters:
sessionID - String
elementID - String
value - String

updateExecutable

public static void updateExecutable(java.lang.String sessionID,
                                    java.lang.String elementID,
                                    boolean execute)
Calls javascript method to update the elements' executable status

Parameters:
sessionID - String
elementID - String
execute - boolean

updateReadable

public static void updateReadable(java.lang.String sessionID,
                                  java.lang.String elementID,
                                  boolean read)
Calls javascript method to update the elements' readable status

Parameters:
sessionID - String
elementID - String
read - boolean

updateWritable

public static void updateWritable(java.lang.String sessionID,
                                  java.lang.String elementID,
                                  boolean write)
Calls javascript method to update the elements' writable status

Parameters:
sessionID - String
elementID - String
write - boolean

getLabel

public static java.lang.String getLabel(java.lang.String sessionId,
                                        java.lang.String elementId)
Gets the Label for the particular elementID

Parameters:
sessionId - String
elementId - String
Returns:
String

getLabelForCurrentValue

public static java.lang.String getLabelForCurrentValue(java.lang.String sessionId,
                                                       java.lang.String elementId)
Gets the Label for the Current Value of the elementID

Parameters:
sessionId - String
elementId - String
Returns:
String

getResourceForOperation

public static java.lang.String getResourceForOperation(java.lang.String sessionId,
                                                       java.lang.String elementId,
                                                       java.lang.String role,
                                                       java.lang.String opRef)
Indirect call to getResource

Parameters:
sessionId - String
elementId - String
role - String
opRef - String
Returns:
String

getResourceForValue

public static java.lang.String getResourceForValue(java.lang.String sessionId,
                                                   java.lang.String elementId,
                                                   java.lang.String role,
                                                   java.lang.String valRef)
Indirect call to getResource

Parameters:
sessionId - String
elementId - String
role - String
valRef - String
Returns:
String

getResource

public static java.lang.String getResource(java.lang.String sessionId,
                                           java.lang.String elementId,
                                           java.lang.String role)
Indirect call to getResource

Parameters:
sessionId - String
elementId - String
role - String
Returns:
String

getResource

protected static java.lang.String getResource(java.lang.String targetId,
                                              java.lang.String elementRef,
                                              java.lang.String valueRef,
                                              java.lang.String opRef,
                                              java.lang.String role)
Calls the getResource method of the ResourceManager

Parameters:
elementRef - ElementRef
valueRef - String
opRef - String
role - String
Returns:
String

setResourcePreference

public static void setResourcePreference(java.lang.String prefUri,
                                         java.lang.String[] prefValues)
Sets one preference data for subsequent calls to getLabel, getResource, etc.

Parameters:
prefUri - String Complete URI indicating the preference property. Possible properties are listed in ANSI/INCITS 393-2005, section 8, and include the following: "http://purl.org/dc/elements/1.1/type" for , "http://purl.org/dc/elements/1.1/format" for , "http://www.incits.org/incits393-2005#languageContext" for in "http://purl.org/dc/elements/1.1/creator" for , "http://purl.org/dc/elements/1.1/publisher" for , "http://purl.org/dc/elements/1.1/contributor" for , "http://purl.org/dc/terms/audience" for .
prefValues - List of Strings Preferred values for the preference property.

setResourcePreference

public static void setResourcePreference(java.lang.String prefUri,
                                         java.lang.String prefValue)
Sets one preference data for subsequent calls to getLabel, getResource, etc.

Parameters:
prefUri - String Complete URI indicating the preference property. Possible properties are listed in ANSI/INCITS 393-2005, section 8, and include the following: "http://purl.org/dc/elements/1.1/type" for , "http://purl.org/dc/elements/1.1/format" for , "http://www.incits.org/incits393-2005#languageContext" for in "http://purl.org/dc/elements/1.1/creator" for , "http://purl.org/dc/elements/1.1/publisher" for , "http://purl.org/dc/elements/1.1/contributor" for , "http://purl.org/dc/terms/audience" for .
prefValue - String Preferred value for the preference property.

setResourceLanguage

public static void setResourceLanguage(java.lang.String prefValue)
Sets preference value for Language

Parameters:
prefValue - String Preferred value for the preference property.

setResourceType

public static void setResourceType(java.lang.String prefValue)
Sets preference value for Type

Parameters:
prefValue - String Preferred value for the preference property.

isWritable

public static boolean isWritable(java.lang.String sessionId,
                                 java.lang.String elementId)
Check 'Writable' property of SocketElement

Parameters:
sessionId - String
elementId - String
Returns:
True is writable

isReadable

public static boolean isReadable(java.lang.String sessionId,
                                 java.lang.String elementId)
Check 'Readable' property of SocketElement

Parameters:
sessionId -
elementId -
Returns:
True if Readable

isAvailable

public static boolean isAvailable(java.lang.String sessionId,
                                  java.lang.String elementId)
Check 'Available' property of SocketElement

Parameters:
sessionId -
elementId -
Returns:
True if Available

setLogLevel

public static void setLogLevel(java.lang.String level)
Set the Log Level externally

Parameters:
level - String : "info", "warning", "severe"

targetDiscovered

public void targetDiscovered(TargetMirror target)
Description copied from interface: IClientListener
targetDiscovered a method for handling when a Target is discovered on a TUN registered with the URC. It is called whenever a Target is added to a TUN.

Specified by:
targetDiscovered in interface IClientListener
Parameters:
target - a TargetMirror value

targetDiscarded

public void targetDiscarded(TargetMirror target)
Description copied from interface: IClientListener
targetDiscarded a method for handling when a Target is discarded on a TUN registered with the URC. It is called whenever a Target is removed (either voluntarily or forcibly) from a TUN.

Specified by:
targetDiscarded in interface IClientListener
Parameters:
target - a TargetMirror value

sessionAborted

public void sessionAborted(ClientSession session)
Description copied from interface: IClientListener
sessionAborted a method for handling when a Target aborts a particular Session

Specified by:
sessionAborted in interface IClientListener
Parameters:
session - a ClientSession value


Copyright © 2006 Trace R&D Center, University of Wisconsin-Madison. All Rights Reserved.