TWE 2.3-2 API

org.enhydra.jawe.base.controller
Class JaWEController

java.lang.Object
  extended byjava.util.Observable
      extended byorg.enhydra.jawe.base.controller.JaWEController
All Implemented Interfaces:
ChoiceButtonListener, JaWEComponent, java.util.Observer
Direct Known Subclasses:
TogWEDemoController

public class JaWEController
extends java.util.Observable
implements java.util.Observer, JaWEComponent, ChoiceButtonListener

Used to handle JaWE.

Author:
Sasa Bojanic, Miroslav Popov

Field Summary
protected  java.util.Map configInfo
           
protected  java.lang.String currentConfig
           
protected  JaWEActions defaultJaWEActions
           
protected  JaWEEdit edit
           
protected  JaWEFrame frame
           
protected  boolean jaweFrameShown
           
protected  JaWETypeResolver jtypeResolver
           
protected  JaWETypes jtypes
           
protected  JaWESelectionManager selectionMng
           
protected  ControllerSettings settings
           
protected  boolean undoableChangeInProgress
           
protected  UndoHistoryManager undoHistoryManager
           
protected  XPDLElementChangeInfo undoSelectionEvent
           
protected  boolean updateInProgress
           
protected  boolean updateSpecialInProgress
           
protected  java.util.List xpdlInfoList
           
protected  java.util.List xpdlListenerObservables
           
 
Fields inherited from class java.util.Observable
 
Fields inherited from interface org.enhydra.jawe.JaWEComponent
LOWER_STATUS_COMPONENT, MAIN_COMPONENT, OTHER_COMPONENT, SPECIAL_COMPONENT, TREE_COMPONENT, UPPER_STATUS_COMPONENT
 
Constructor Summary
JaWEController(ControllerSettings settings)
           
 
Method Summary
 void addExternalPackage()
           
 void addObserver(java.util.Observer obs)
           
 void addTransientPackage()
           
 boolean addTransientPackage(java.lang.String filename)
           
 void adjustActions()
           
 boolean adjustXPDL(org.enhydra.shark.xpdl.elements.Package pkg)
           
 boolean canCreateElement(org.enhydra.shark.xpdl.XMLCollection col)
           
 boolean canCreateElement(org.enhydra.shark.xpdl.XMLCollection col, boolean checkReadOnly)
           
 boolean canDuplicateElement(org.enhydra.shark.xpdl.XMLCollection col, org.enhydra.shark.xpdl.XMLElement el)
           
 boolean canDuplicateElement(org.enhydra.shark.xpdl.XMLCollection col, org.enhydra.shark.xpdl.XMLElement el, boolean checkReadOnly)
           
 boolean canInsertElement(org.enhydra.shark.xpdl.XMLCollection col, org.enhydra.shark.xpdl.XMLElement el)
           
 boolean canInsertElement(org.enhydra.shark.xpdl.XMLCollection col, org.enhydra.shark.xpdl.XMLElement el, boolean checkReadOnly)
           
 boolean canModifyElement(org.enhydra.shark.xpdl.XMLElement el)
           
 boolean canModifyElement(org.enhydra.shark.xpdl.XMLElement el, boolean checkReadOnly)
           
 boolean canRemoveElement(org.enhydra.shark.xpdl.XMLCollection col, org.enhydra.shark.xpdl.XMLElement el)
           
 boolean canRemoveElement(org.enhydra.shark.xpdl.XMLCollection col, org.enhydra.shark.xpdl.XMLElement el, boolean checkReadOnly)
           
 boolean canRepositionElement(org.enhydra.shark.xpdl.XMLCollection col, org.enhydra.shark.xpdl.XMLElement el)
           
 boolean canRepositionElement(org.enhydra.shark.xpdl.XMLCollection col, org.enhydra.shark.xpdl.XMLElement el, boolean checkReadOnly)
           
 void changeJaWEComponentType(JaWEComponent comp, java.lang.String newType)
           
 void changePackageFileName(org.enhydra.shark.xpdl.elements.Package pkg, java.lang.String newFileName)
           
protected  void changePackageId(org.enhydra.shark.xpdl.elements.Package pkg, java.lang.String oldId, java.lang.String newId)
           
protected  boolean checkInsertion(XPDLHandler xpdlhmain, XPDLHandler xpdlh, java.lang.String mainPkgId)
           
 boolean checkValidity(org.enhydra.shark.xpdl.elements.Package el, boolean fullCheck, boolean specNotif, boolean initialOrDesignTimeValidation)
           
 java.util.List checkValidity(org.enhydra.shark.xpdl.XMLElement el, boolean fullCheck)
           
protected  void clearAll()
           
protected  void clearHistory()
           
protected  void clearXPDLListenerObservables(boolean clearTransient)
           
 void closePackage(java.lang.String xpdlId, boolean closeTransient)
           
 boolean confirmDelete(java.util.List sel, org.enhydra.shark.xpdl.XMLElement firstSelected)
           
 XPDLElementChangeInfo createInfo(org.enhydra.shark.xpdl.XMLElement el, int action)
           
 XPDLElementChangeInfo createInfo(org.enhydra.shark.xpdl.XMLElement main, java.util.List elements, int action)
           
protected  void createJaWEFrame()
           
protected  XPDLListenerAndObservable createNewXPDLListenerObservable(org.enhydra.shark.xpdl.elements.Package pkg, boolean receiveEvents, boolean modified)
           
 void endUndouableChange(java.util.List elementsToSelect)
           
protected  void fillConfigInfo()
           
 java.util.List getChoices(ChoiceButton cbutton)
           
protected  java.lang.String getConfigId(java.util.Map ci, java.lang.String cfgName)
           
 java.lang.String getConfigId(java.lang.String cfgName)
           
 java.util.Map getConfigInfo()
           
 ControllerSettings getControllerSettings()
           
 java.lang.String getCurrentConfig()
           
 java.lang.String getCurrentConfigName()
           
 XPDLElementChangeInfo getCurrentSelectionEvent()
           
 JaWEEdit getEdit()
           
 JaWEActions getJaWEActions()
           
 JaWEFrame getJaWEFrame()
           
 JaWETypes getJaWETypes()
           
 org.enhydra.shark.xpdl.elements.Package getMainPackage()
           
 java.lang.String getMainPackageId()
           
 java.lang.String getName()
           
 java.lang.String getPackageFilename(java.lang.String xpdlId)
           
 java.lang.Object getSelectedObject(ChoiceButton cbutton)
           
 JaWESelectionManager getSelectionManager()
           
 JaWEComponentSettings getSettings()
           
 java.lang.String getType()
           
 JaWETypeResolver getTypeResolver()
           
 UndoHistoryManager getUndoHistoryManager()
           
 JaWEComponentView getView()
           
protected  XPDLListenerAndObservable getWorkingXPDLListenerObservable()
           
protected  XPDLListenerAndObservable getXPDLListenerObservable(org.enhydra.shark.xpdl.elements.Package pkg)
           
 void handleEvent(XPDLElementChangeInfo info)
           
 void init()
           
 boolean isPackageModified(java.lang.String xpdlId)
           
 boolean isSaveEnabled(boolean isSaveAs)
           
 boolean isUndoableChangeInProgress()
           
 boolean isUndoOrRedoInProgress()
           
 boolean isUpdateInProgress()
           
 void newPackage(java.lang.String type)
           
protected  org.enhydra.shark.xpdl.elements.Package openPackage(java.lang.String filename, byte[] xpdlStream)
           
 org.enhydra.shark.xpdl.elements.Package openPackageFromFile(java.lang.String filename)
           
 org.enhydra.shark.xpdl.elements.Package openPackageFromStream(byte[] xpdlStream)
           
protected  java.lang.String readConfigName(java.lang.String configFolder)
           
 void redo()
           
protected static java.util.Set refElsNotToAskOnDeletion(java.lang.String hstr)
           
 void registerJaWEComponent(JaWEComponent jaweComponent)
           
 void removeExternalPackage()
           
 void removeJaWEComonent(JaWEComponent comp)
           
 void removeTransientPackage()
           
 void savePackage(java.lang.String xpdlId, java.lang.String filename)
           
 void selectionChanged(ChoiceButton cbutton, java.lang.Object change)
           
 void sendEvent(XPDLElementChangeInfo info)
           
 void setType(java.lang.String type)
           
 void setUpdateInProgress(boolean inProgress)
           
 void showJaWEFrame()
           
 void startUndouableChange()
           
 boolean tryToClosePackage(java.lang.String xpdlId, boolean closeTransient)
           
 void undo()
           
 void update(java.util.Observable o, java.lang.Object arg)
           
protected  void updateExternalPackagesRelativePaths(org.enhydra.shark.xpdl.elements.Package pkg, java.lang.String newFilename)
           
protected  void updateTitle()
           
 
Methods inherited from class java.util.Observable
clearChanged, countObservers, deleteObserver, deleteObservers, hasChanged, notifyObservers, notifyObservers, setChanged
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

settings

protected ControllerSettings settings

undoableChangeInProgress

protected boolean undoableChangeInProgress

updateInProgress

protected boolean updateInProgress

updateSpecialInProgress

protected boolean updateSpecialInProgress

edit

protected JaWEEdit edit

jtypes

protected JaWETypes jtypes

jtypeResolver

protected JaWETypeResolver jtypeResolver

xpdlInfoList

protected java.util.List xpdlInfoList

xpdlListenerObservables

protected java.util.List xpdlListenerObservables

selectionMng

protected JaWESelectionManager selectionMng

defaultJaWEActions

protected JaWEActions defaultJaWEActions

undoHistoryManager

protected UndoHistoryManager undoHistoryManager

frame

protected JaWEFrame frame

jaweFrameShown

protected boolean jaweFrameShown

undoSelectionEvent

protected XPDLElementChangeInfo undoSelectionEvent

currentConfig

protected java.lang.String currentConfig

configInfo

protected java.util.Map configInfo
Constructor Detail

JaWEController

public JaWEController(ControllerSettings settings)
Method Detail

addObserver

public void addObserver(java.util.Observer obs)

update

public void update(java.util.Observable o,
                   java.lang.Object arg)
Specified by:
update in interface java.util.Observer

getSettings

public JaWEComponentSettings getSettings()
Specified by:
getSettings in interface JaWEComponent

getView

public JaWEComponentView getView()
Specified by:
getView in interface JaWEComponent

getName

public java.lang.String getName()
Specified by:
getName in interface JaWEComponent

getType

public java.lang.String getType()
Specified by:
getType in interface JaWEComponent

setType

public void setType(java.lang.String type)
Specified by:
setType in interface JaWEComponent

adjustXPDL

public boolean adjustXPDL(org.enhydra.shark.xpdl.elements.Package pkg)
Specified by:
adjustXPDL in interface JaWEComponent

checkValidity

public boolean checkValidity(org.enhydra.shark.xpdl.elements.Package el,
                             boolean fullCheck,
                             boolean specNotif,
                             boolean initialOrDesignTimeValidation)

checkValidity

public java.util.List checkValidity(org.enhydra.shark.xpdl.XMLElement el,
                                    boolean fullCheck)
Specified by:
checkValidity in interface JaWEComponent

canCreateElement

public boolean canCreateElement(org.enhydra.shark.xpdl.XMLCollection col)
Specified by:
canCreateElement in interface JaWEComponent

canInsertElement

public boolean canInsertElement(org.enhydra.shark.xpdl.XMLCollection col,
                                org.enhydra.shark.xpdl.XMLElement el)
Specified by:
canInsertElement in interface JaWEComponent

canModifyElement

public boolean canModifyElement(org.enhydra.shark.xpdl.XMLElement el)
Specified by:
canModifyElement in interface JaWEComponent

canRemoveElement

public boolean canRemoveElement(org.enhydra.shark.xpdl.XMLCollection col,
                                org.enhydra.shark.xpdl.XMLElement el)
Specified by:
canRemoveElement in interface JaWEComponent

canDuplicateElement

public boolean canDuplicateElement(org.enhydra.shark.xpdl.XMLCollection col,
                                   org.enhydra.shark.xpdl.XMLElement el)
Specified by:
canDuplicateElement in interface JaWEComponent

canRepositionElement

public boolean canRepositionElement(org.enhydra.shark.xpdl.XMLCollection col,
                                    org.enhydra.shark.xpdl.XMLElement el)
Specified by:
canRepositionElement in interface JaWEComponent

selectionChanged

public void selectionChanged(ChoiceButton cbutton,
                             java.lang.Object change)
Specified by:
selectionChanged in interface ChoiceButtonListener

getSelectedObject

public java.lang.Object getSelectedObject(ChoiceButton cbutton)
Specified by:
getSelectedObject in interface ChoiceButtonListener

getChoices

public java.util.List getChoices(ChoiceButton cbutton)
Specified by:
getChoices in interface ChoiceButtonListener

init

public void init()

registerJaWEComponent

public void registerJaWEComponent(JaWEComponent jaweComponent)

removeJaWEComonent

public void removeJaWEComonent(JaWEComponent comp)

changeJaWEComponentType

public void changeJaWEComponentType(JaWEComponent comp,
                                    java.lang.String newType)

createJaWEFrame

protected void createJaWEFrame()

showJaWEFrame

public void showJaWEFrame()

isPackageModified

public boolean isPackageModified(java.lang.String xpdlId)

getMainPackage

public org.enhydra.shark.xpdl.elements.Package getMainPackage()

getMainPackageId

public java.lang.String getMainPackageId()

getPackageFilename

public java.lang.String getPackageFilename(java.lang.String xpdlId)

changePackageFileName

public void changePackageFileName(org.enhydra.shark.xpdl.elements.Package pkg,
                                  java.lang.String newFileName)

newPackage

public void newPackage(java.lang.String type)

openPackageFromFile

public org.enhydra.shark.xpdl.elements.Package openPackageFromFile(java.lang.String filename)

openPackageFromStream

public org.enhydra.shark.xpdl.elements.Package openPackageFromStream(byte[] xpdlStream)

openPackage

protected org.enhydra.shark.xpdl.elements.Package openPackage(java.lang.String filename,
                                                              byte[] xpdlStream)

addExternalPackage

public void addExternalPackage()

removeExternalPackage

public void removeExternalPackage()

addTransientPackage

public void addTransientPackage()

addTransientPackage

public boolean addTransientPackage(java.lang.String filename)

removeTransientPackage

public void removeTransientPackage()

checkInsertion

protected boolean checkInsertion(XPDLHandler xpdlhmain,
                                 XPDLHandler xpdlh,
                                 java.lang.String mainPkgId)

closePackage

public void closePackage(java.lang.String xpdlId,
                         boolean closeTransient)

isSaveEnabled

public boolean isSaveEnabled(boolean isSaveAs)

savePackage

public void savePackage(java.lang.String xpdlId,
                        java.lang.String filename)

tryToClosePackage

public boolean tryToClosePackage(java.lang.String xpdlId,
                                 boolean closeTransient)

createNewXPDLListenerObservable

protected XPDLListenerAndObservable createNewXPDLListenerObservable(org.enhydra.shark.xpdl.elements.Package pkg,
                                                                    boolean receiveEvents,
                                                                    boolean modified)

getXPDLListenerObservable

protected XPDLListenerAndObservable getXPDLListenerObservable(org.enhydra.shark.xpdl.elements.Package pkg)

getWorkingXPDLListenerObservable

protected XPDLListenerAndObservable getWorkingXPDLListenerObservable()

changePackageId

protected void changePackageId(org.enhydra.shark.xpdl.elements.Package pkg,
                               java.lang.String oldId,
                               java.lang.String newId)

updateExternalPackagesRelativePaths

protected void updateExternalPackagesRelativePaths(org.enhydra.shark.xpdl.elements.Package pkg,
                                                   java.lang.String newFilename)

createInfo

public XPDLElementChangeInfo createInfo(org.enhydra.shark.xpdl.XMLElement el,
                                        int action)

createInfo

public XPDLElementChangeInfo createInfo(org.enhydra.shark.xpdl.XMLElement main,
                                        java.util.List elements,
                                        int action)

canCreateElement

public boolean canCreateElement(org.enhydra.shark.xpdl.XMLCollection col,
                                boolean checkReadOnly)

canInsertElement

public boolean canInsertElement(org.enhydra.shark.xpdl.XMLCollection col,
                                org.enhydra.shark.xpdl.XMLElement el,
                                boolean checkReadOnly)

canModifyElement

public boolean canModifyElement(org.enhydra.shark.xpdl.XMLElement el,
                                boolean checkReadOnly)

canRemoveElement

public boolean canRemoveElement(org.enhydra.shark.xpdl.XMLCollection col,
                                org.enhydra.shark.xpdl.XMLElement el,
                                boolean checkReadOnly)

canDuplicateElement

public boolean canDuplicateElement(org.enhydra.shark.xpdl.XMLCollection col,
                                   org.enhydra.shark.xpdl.XMLElement el,
                                   boolean checkReadOnly)

canRepositionElement

public boolean canRepositionElement(org.enhydra.shark.xpdl.XMLCollection col,
                                    org.enhydra.shark.xpdl.XMLElement el,
                                    boolean checkReadOnly)

startUndouableChange

public void startUndouableChange()

endUndouableChange

public void endUndouableChange(java.util.List elementsToSelect)

isUndoableChangeInProgress

public boolean isUndoableChangeInProgress()

isUndoOrRedoInProgress

public boolean isUndoOrRedoInProgress()

handleEvent

public void handleEvent(XPDLElementChangeInfo info)

clearHistory

protected void clearHistory()

clearAll

protected void clearAll()

clearXPDLListenerObservables

protected void clearXPDLListenerObservables(boolean clearTransient)

undo

public void undo()

redo

public void redo()

sendEvent

public void sendEvent(XPDLElementChangeInfo info)

getCurrentSelectionEvent

public XPDLElementChangeInfo getCurrentSelectionEvent()

confirmDelete

public boolean confirmDelete(java.util.List sel,
                             org.enhydra.shark.xpdl.XMLElement firstSelected)

refElsNotToAskOnDeletion

protected static java.util.Set refElsNotToAskOnDeletion(java.lang.String hstr)

getEdit

public JaWEEdit getEdit()

getSelectionManager

public JaWESelectionManager getSelectionManager()

getJaWEActions

public JaWEActions getJaWEActions()

getJaWEFrame

public JaWEFrame getJaWEFrame()

adjustActions

public void adjustActions()

updateTitle

protected void updateTitle()

getJaWETypes

public JaWETypes getJaWETypes()

getTypeResolver

public JaWETypeResolver getTypeResolver()

getControllerSettings

public ControllerSettings getControllerSettings()

setUpdateInProgress

public void setUpdateInProgress(boolean inProgress)
Specified by:
setUpdateInProgress in interface JaWEComponent

isUpdateInProgress

public boolean isUpdateInProgress()
Specified by:
isUpdateInProgress in interface JaWEComponent

getUndoHistoryManager

public UndoHistoryManager getUndoHistoryManager()

getCurrentConfig

public java.lang.String getCurrentConfig()

getCurrentConfigName

public java.lang.String getCurrentConfigName()

getConfigId

public java.lang.String getConfigId(java.lang.String cfgName)

getConfigId

protected java.lang.String getConfigId(java.util.Map ci,
                                       java.lang.String cfgName)

getConfigInfo

public java.util.Map getConfigInfo()

fillConfigInfo

protected void fillConfigInfo()

readConfigName

protected java.lang.String readConfigName(java.lang.String configFolder)

TWE 2.3-2 API