superwaba.ext.xplat.sync
Class Conduit

java.lang.Object
  |
  +--waba.ui.Control
        |
        +--waba.ui.Container
              |
              +--waba.ui.Window
                    |
                    +--waba.ui.MainWindow
                          |
                          +--superwaba.ext.xplat.sync.Conduit

public abstract class Conduit
extends MainWindow

This class allos you to do offline synchronization of your PDA, using the Hotsync (for Palm OS) and ActiveSync (for Windows CE). Note that this is offline from the point of view of the PDA (it is in the cradle), but this class can obviously open sockets, since it is running at the desktop.

This is the conduit's mainwindow. Two methods will be called at different times:

When running as a Java application on desktop, the synchronization is emulated using a Catalog.

Note that the correct screen size for this mainwindow is 240x320, since if will be running as a Windows 32 application using the SWVM at desktop.


Field Summary
 int syncTarget
          Defines the target platform for synchronization.
static int TARGETING_ACTIVESYNC
           
static int TARGETING_HOTSYNC
           
 
Fields inherited from class waba.ui.MainWindow
defaultFont
 
Fields inherited from class waba.ui.Window
_controlEvent, _focus, _keyEvent, _penEvent, beepIfOut, blockingCount, borderStyle, canDrag, eraseBackgroundNow, flicker, HIDE_STATE, highlighted, highResPrepared, imgCovered, lastSwappedContainer, mainSwapContainer, menubar, needsPaint, NO_BORDER, RECT_BORDER, ROUND_BORDER, TAB_BORDER, TAB_ONLY_BORDER, title, titleFont, topMost, VK_BOTTOM, VK_HIDE, VK_SHOW, VK_TOP, zStack
 
Fields inherited from class waba.ui.Container
BORDER_LOWERED, BORDER_NONE, BORDER_RAISED, BORDER_SIMPLE, children, lastH, lastW, lastX, lastY, parentWindow, started, tabOrder, tail
 
Fields inherited from class waba.ui.Control
AFTER, appId, appObj, asContainer, asWindow, backColor, backDis, BEFORE, BOTTOM, CENTER, clearValueInt, clearValueStr, enabled, FILL, FIT, fm, fmH, focusLess, focusTraversable, font, foreColor, foreDis, height, highlightRectsCount, isHighlighting, LEFT, parent, PREFERRED, RANGE, RIGHT, SAME, TOP, uiCE, uiFlat, uiPalm, uiVista, visible, width, x, x2, y, y2
 
Constructor Summary
Conduit(java.lang.String title, byte style)
          Creates a conduit with a title and a border.
 
Method Summary
protected abstract  void doConfig()
          Called when the user wants to configure this conduit.
protected abstract  void doSync()
          Called when the synchronization has started.
static void log(java.lang.String text)
          Used to show a log text on the HotSync's window
 void onStart()
          A commandline parameter must be passed in order to invoke actions on this conduit:
/r register conduit.
static void yield()
          This method let the conduit manager take a breath.
 
Methods inherited from class waba.ui.MainWindow
_onTimerTick, _runThreads, addThread, addTimer, appEnding, appStarting, exit, getCommandLine, getFontMetrics, getMainWindow, killThreads, onExit, removeThread, removeTimer, setRect
 
Methods inherited from class waba.ui.Window
_doPaint, _doPaint, _postEvent, _postSoundEvent, damageRect, destroyZStack, dontSaveBehind, drawHighlight, getClientRect, getClientRect, getFocus, getHighlighted, getOffScreen, getPreferredHeight, getPreferredWidth, getTopMost, handleFocusChangeKeys, isTopMost, isVisible, loadBehind, makeUnmovable, onClickedOutside, onPopup, onUnpop, paintTitle, popupBlockingModal, popupMenuBar, popupModal, postPopup, postPressedEvent, postUnpop, pumpEvents, saveBehind, setBorderStyle, setDoubleBuffer, setFocus, setHighlighted, setMenuBar, setStatePosition, setTitle, setTitleFont, swap, swapFocus, unpop, updateScreen, validate
 
Methods inherited from class waba.ui.Container
add, add, add, broadcastEvent, clear, findChild, getChildren, onAdd, onColorsChanged, onPaint, onRemove, paintChildren, remove, setEnabled, setHighlighting, swapToTopmostWindow
 
Methods inherited from class waba.ui.Control
addTimer, changeHighlighted, contains, createGraphics, getAbsoluteRect, getBackColor, getFont, getForeColor, getNext, getParent, getParentWindow, getPos, getRect, getSize, isDisplayed, isEnabled, onBoundsChanged, onEvent, onFontChanged, onWindowPaintFinished, postEvent, repaint, repaintNow, requestFocus, setBackColor, setBackForeColors, setFocusLess, setFont, setForeColor, setRect, setRect, setVisible, translateFromOrigin, uiStyleChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

TARGETING_ACTIVESYNC

public static final int TARGETING_ACTIVESYNC

TARGETING_HOTSYNC

public static final int TARGETING_HOTSYNC

syncTarget

public int syncTarget
Defines the target platform for synchronization. Note that changing this value has no effects.
See Also:
TARGETING_ACTIVESYNC, TARGETING_HOTSYNC
Constructor Detail

Conduit

public Conduit(java.lang.String title,
               byte style)
Creates a conduit with a title and a border. This is the only constructor that your MainWindow class can call.
Method Detail

onStart

public final void onStart()
A commandline parameter must be passed in order to invoke actions on this conduit:
/r register conduit. DebugConsole.txt file has 0 if success, 1 if failure
/u unregister conduit. DebugConsole.txt file has 0 if success, 1 if failure
/s synchronize
/c configure
Overrides:
onStart in class MainWindow

log

public static void log(java.lang.String text)
Used to show a log text on the HotSync's window

yield

public static void yield()
This method let the conduit manager take a breath. This is important, because in intensive operations that does not give a breath to the conduit, the connection between the pda and the desktop may break.

doSync

protected abstract void doSync()
Called when the synchronization has started. Everything must be implemented inside this method.

doConfig

protected abstract void doConfig()
Called when the user wants to configure this conduit.