Class ClientSessionGyro
- All Implemented Interfaces:
- IPrivateStorage,- IClientSessionGyro,- IFocusEngineProvider,- IMessageBox,- IRuntimeImageCache,- IToaster,- IVirtualizedReferenceLookup,- IGyroFocusEngineOwner,- ILocaleString
- Author:
- Christopher Mindus
- Nested Class Summary- Nested classes/interfaces inherited from interface com.iizix.gyro.IMessageBox- IMessageBox.Icon- Nested classes/interfaces inherited from interface com.iizix.gyro.IToaster- IToaster.Direction, IToaster.Position, IToaster.Type
- Field Summary- Fields inherited from interface com.iizix.gyro.IClientSessionGyro- STORAGE_NAME- Fields inherited from interface com.iizix.gyro.IMessageBox- ICON_ERROR, ICON_INFORMATION, ICON_MAP, ICON_NONE, ICON_QUESTION, ICON_WARNING- Fields inherited from interface com.iizix.gyro.IToaster- TOASTER_DEFAULT_DURATION, TOASTER_MAX_DURATION, TOASTER_MIN_DURATION
- Method SummaryModifier and TypeMethodDescription- booleanAdds a dispose listener for the client session.Adds a new focus entry at the current location for this client session.- booleanAdds a screen orientation listener for the client session.- boolean- addScreenSizeListener- (IScreenSizeListener listener) Adds a screen size listener for the client session.- intAdds the SVG image information as being sent to the client.- voidClears the entire cache.- boolean- dispose()Disposes of the Gyro instance so the client session ends.- void- enterClientLock- (boolean isFromClient) Method called whenever the client lock state is enabled.- voidReleases client lock state if the client is not in busy state.Get the web server file provider for the client session.Gets the Gyro for the application session.- getClientContextMenuReference- (UIContextMenu contextMenu) Gets the reference to use for a context menu.- getClientContextMenuReference- (UIContextMenu contextMenu, boolean fullPropReference) Gets the reference to use for a context menu.Gets the client end point instance.Gets the client sessions information.Gets the client timer engine.Gets the Client Worker.Returns the current focus in the UI.- boolean- getDeviceParameters- (DeviceParameter... params) Retrieves parameters from the client device for the current app.Gets the current environment properties for Selector's or Value's.Gets the flashlight client-specific instance, currently only supported for operations on iiziRun clients for Android and iOS.- getFocusEngine- (IFocusComp comp) Returns the focus engine instance for the specified component.Gets the history request instance for the client session.Gets an image definition from the image container for the client session.Retrieves the KStringInfoProvider for the client session.Gets the language code to use for the client session, or if not defined, the application session language code.Gets the local info class instance.- getLocaleKString- (String id, boolean system) Gets the KString of a particular ID from the app's text tables that are flagged to also handle LocaleString's depending on the flag.Returns an instance of the geolocation service.- getMatchingPanels- (VirtualSpace virtualSpace) Gets the panels that matches a VirtualSpace for this client session.- intReturns the animation that will be used for next panel that replaces another panel.Get the open native settings interface for the client-specific instance, supported only on iiziRun clients running iiziRun-based clients for Android and iOS.Gets the locale'd texts instance for the sessions language and text tables.Gets the concurrent hash map used to store the private data.Gets the RuntimeApp for the Gyro instance.- intGets the current screen height.Gets the current screen orientation.Gets the current screen size.- intGets the current screen width.- static ClientSessionGyroGets the runtime application instance for the current thread in a client session.- static ClientSessionGyro- getSessionInstance- (SessionInfo sessionInfo) Gets the runtime application instance for the current thread in a client session.Gets the current top-most panel.Returns the UI focus engine instance for the specified component.Gets the cached and sorted array of panels that is currently displayed.- GProp<?>- getVirtualizedPropFromReference- (String reference) Attempts to look up a virtualized property from a reference by searching this instance.- boolean- installFont- (String fontFamily) Installs the font families as specified by the font family.- boolean- installFonts- (List<FontFiles> fontList) Installs the font face as specified by the- FontFilesinstance for the Client Session.- booleanChecks if the client session Gyro is disposed of.- booleanChecks if screen orientation locking is supported or not.- void- messageBox- (IMessageBoxReply reply, IMessageBox.Icon icon, KString title, KString message, KString... buttons) Displays a message box with the specified title and message.- void- onFocusChanged- (IFocusComp newComp, IFocusComp oldComp, IGProp<?> trigger, boolean isRemoteInduced, boolean isInternal) Called when focus changes.- void- onFocusVetoChange- (FocusEvent event) Called to perform veto.- booleanRemoves a dispose listener for the client session.- boolean- removeImage- (String name) Removes an image with a name from the client session.- booleanRemoves a screen orientation listener for the client session.- boolean- removeScreenSizeListener- (IScreenSizeListener listener) Removes a screen size listener for the client session.Requests a UI lock state.- voidRestarts the remote client.- boolean- saveDeviceParameters- (DeviceParameter... params) Saves parameters on the client device for the current app.- void- sendStat- (String event, DeviceParameter... params) Sends statistics event to the analytics engine on the client to log the event.- void- setApplication- (RuntimeApp runtimeApp) Sets the runtime application.- voidSets the UI busy state and optionally updates the message and/or progress.- boolean- setImage- (RuntimeImageDefinition image) Adds the image definition to the image container for the client session.- setLocale- (LocaleInfo locale) Changes or sets the LocaleInfo for the environment.- int- setNextPanelAnimation- (int nextAnimation) Sets the animation that will be used for next panel that replaces another panel.- void- setPseudoActionFocusToVS- (IUIFocusComp focusComp, IGProp<?> trigger) Called when a "pseudo UI action" is executed, making sure its VS counterpart has the current focus.- void- setReady()Sets the UI to "ready", i.e.- booleanSets the UI to "ready", i.e.- boolean- setScreenOrientation- (ScreenOrientation orientation) Locks the screen orientation.- booleanUpdates the focus to the VS from the current focused UI component.- void- toast- (KString message, IToaster.Position position, IToaster.Direction direction, IToaster.Type type, int duration) Displays a simple, unobstructive and ephemeral text message to the user.- boolean- triggerRemoteCloseWindow- (boolean ignoreCallbackListener) Triggers closing of the window on the client that was opened with triggerRemoteOpenWindow.- boolean- triggerRemoteOpenWindow- (String url, String target, WindowOptions options, IWindowCloseListener windowListener) Triggers opening of a browser window on the client.- booleanUnlocks the screen orientation.- Methods inherited from class java.lang.Object- clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait- Methods inherited from interface com.iizix.gyro.IClientSessionGyro- isUILocked, setNextPanelAnimation, triggerRemoteCloseWindow, triggerRemoteOpenWindow, triggerRemoteOpenWindow- Methods inherited from interface com.iizix.text.ILocaleString- getLocaleKString- Methods inherited from interface com.iizix.gyro.IMessageBox- messageBox, messageBox- Methods inherited from interface com.iizix.api.IPrivateStorage- getPrivateData, getPrivateData, setPrivateData
- Method Details- getSessionInstanceGets the runtime application instance for the current thread in a client session.- Returns:
- The RuntimeApp instance when called from a thread of the client session, nullotherwise.
 
- getSessionInstanceGets the runtime application instance for the current thread in a client session.- Parameters:
- sessionInfo- A session information instance, or null for none.
- Returns:
- The RuntimeApp instance when called from a thread of the client session, nullotherwise.
 
- setApplicationSets the runtime application. This method is not intended to be called by user code, it is used by the framework.- Parameters:
- runtimeApp- The runtime application.
- Throws:
- IllegalStateException- If runtime application has been set.
 
- addDisposeListenerAdds a dispose listener for the client session. Calling this method multiple times with the same listener will have no effect (but to return false).- Specified by:
- addDisposeListenerin interface- IClientSessionGyro
- Parameters:
- listener- The listener to add.
- Returns:
- true if the listener was added, false otherwise.
- Throws:
- NullPointerException- If the listener is- null.
 
- removeDisposeListenerRemoves a dispose listener for the client session.- Specified by:
- removeDisposeListenerin interface- IClientSessionGyro
- Parameters:
- listener- The listener to remove.
- Returns:
- true if listener is successfully removed, false otherwise.
 
- disposepublic boolean dispose()Disposes of the Gyro instance so the client session ends.- Specified by:
- disposein interface- IClientSessionGyro
- Returns:
- true for dispose success, false if already disposed of.
 
- isDisposedpublic boolean isDisposed()Checks if the client session Gyro is disposed of.- Specified by:
- isDisposedin interface- IClientSessionGyro
- Returns:
- true if disposed, false otherwise.
 
- getPrivateStorageMapGets the concurrent hash map used to store the private data.- Specified by:
- getPrivateStorageMapin interface- IPrivateStorage
- Returns:
- The private storage map.
 
- getClientEndPointGets the client end point instance.
- getAppSessionGyroGets the Gyro for the application session.- Specified by:
- getAppSessionGyroin interface- IClientSessionGyro
 
- getClientSessionInfoGets the client sessions information.- Specified by:
- getClientSessionInfoin interface- IClientSessionGyro
- Returns:
- The session information instance.
 
- getRuntimeAppGets the RuntimeApp for the Gyro instance.- Returns:
- The runtime app for the client session.
 
- getVirtualizedPropFromReferenceAttempts to look up a virtualized property from a reference by searching this instance.- Specified by:
- getVirtualizedPropFromReferencein interface- IClientSessionGyro
- Specified by:
- getVirtualizedPropFromReferencein interface- IVirtualizedReferenceLookup
- Parameters:
- reference- The reference to look-up.
- Returns:
- The virtualized instance of the property, null if not found.
 
- getKStringInfoProviderRetrieves the KStringInfoProvider for the client session.- Specified by:
- getKStringInfoProviderin interface- IClientSessionGyro
- Specified by:
- getKStringInfoProviderin interface- ILocaleString
- Returns:
- The KString information provider instance, or null if not possible.
 
- getOpenNativeSettingsGet the open native settings interface for the client-specific instance, supported only on iiziRun clients running iiziRun-based clients for Android and iOS.- Specified by:
- getOpenNativeSettingsin interface- IClientSessionGyro
- Returns:
- The open native settings interface. In order to test support for open native settings operations, use IOpenNativeSettings.isSupported().
- Throws:
- NotFoundException- In case the open native settings instance is not found, typically if the client session is under creation, or it has been disposed of.
 
- getFlashlightGets the flashlight client-specific instance, currently only supported for operations on iiziRun clients for Android and iOS.- Specified by:
- getFlashlightin interface- IClientSessionGyro
- Returns:
- The flashlight instance. In order to test support of flashlight operations, use IFlashlight.isSupported().
- Throws:
- NotFoundException- In case the flashlight instance is not found, typically if the client session is under creation, or it has been disposed of.
 
- getEnvironmentGets the current environment properties for Selector's or Value's.- This is NOT the same instance as the one available from the - AppSessionGyro.getEnvironment().- Specified by:
- getEnvironmentin interface- IClientSessionGyro
- Returns:
- The current environment properties for selectors, null if client hasn't sent them yet.
 
- getLanguageCodeGets the language code to use for the client session, or if not defined, the application session language code.- Specified by:
- getLanguageCodein interface- IClientSessionGyro
- Returns:
- The language code, or null for default.
 
- getUIFocusEngineReturns the UI focus engine instance for the specified component.- Specified by:
- getUIFocusEnginein interface- IClientSessionGyro
- Returns:
- The UI focus engine instance.
 
- getFocusEngineReturns the focus engine instance for the specified component.- Specified by:
- getFocusEnginein interface- IFocusEngineProvider
- Parameters:
- comp- The component requesting the focus engine.
- Returns:
- The focus engine instance, or null if not found.
 
- getClientTimerEngineGets the client timer engine. All timer tasks as disposed of automatically when the client session exits.- Specified by:
- getClientTimerEnginein interface- IClientSessionGyro
- Returns:
- The client session implementation of the timeout engine.
 
- getClientWorkerGets the Client Worker.- Specified by:
- getClientWorkerin interface- IClientSessionGyro
- Returns:
- The Client worker instance.
 
- getPrettyLocaledTextsGets the locale'd texts instance for the sessions language and text tables.- Specified by:
- getPrettyLocaledTextsin interface- IClientSessionGyro
- Returns:
- The instance used to create locale'd strings for e.g. duration and distances.
 
- cacheSVGAdds the SVG image information as being sent to the client.- This method is not intended to be called and logs a severe error and returns 1 (one). - Parameters:
- svgString- The SVG string.
- Returns:
- The cached index value for the SVG string. A negative value indicates that it needs sending to the client, whereas a positive means only the index is required to be sent. Zero is never returned.
 
- getAppSessionFileProviderGet the web server file provider for the client session.- Returns:
- The web server file provider.
- Throws:
- IOException- If the directory for the client session files failed to be created.
- IllegalStateException- If the client session is disposed of.
 
- getNextPanelAnimationpublic int getNextPanelAnimation()Returns the animation that will be used for next panel that replaces another panel.- This animation only applies to full-page panels. - This value is reset to - IUIPanelAnimation.ANIMATION_DEFAULT- Specified by:
- getNextPanelAnimationin interface- IClientSessionGyro
- Returns:
- The composite animation value, or IUIPanelAnimation.ANIMATION_DEFAULT
 
- setNextPanelAnimationpublic int setNextPanelAnimation- (int nextAnimation) Sets the animation that will be used for next panel that replaces another panel.- This animation only applies to full-page panels. - This value is reset to - IUIPanelAnimation.ANIMATION_DEFAULT- Specified by:
- setNextPanelAnimationin interface- IClientSessionGyro
- Returns:
- The old "next panel animation" composite animation value, or IUIPanelAnimation.ANIMATION_DEFAULT
 
- getVirtualizedPanelsGets the cached and sorted array of panels that is currently displayed.- The index 0 is the topmost panel and the higher the index, the more overlapped the panel is. The highest index is the top-level main panel covering the screen. - Do not modify this array! - Specified by:
- getVirtualizedPanelsin interface- IClientSessionGyro
- Returns:
- The virtualized panels.
 
- getTopmostPanelGets the current top-most panel.- Specified by:
- getTopmostPanelin interface- IClientSessionGyro
- Returns:
- The panel, null if none has been created.
 
- getMatchingPanelsGets the panels that matches a VirtualSpace for this client session. The VirtualSpace can be virtualized or not, and the client session environment properties are used to determine the panels in question (i.e. depending on their selectors).- This method is quite CPU intensive and should NOT be done too often. The return value is however cached during the focus handler mappings from VirtualSpace to the UI, so only one such call is done. - The ordering is significant and can be a mix of primary and secondary panels, however the matching panel is the virtualized instance if one is present, otherwise it is the non-virtualized instance. - Note: The result from this method should not be cached because the matching panels may very well change during a client session due to e.g. a change in client capabilities or alike (that affects the result of the selectors used). - Specified by:
- getMatchingPanelsin interface- IClientSessionGyro
- Parameters:
- virtualSpace- The VirtualSpace to look-up the panels for.
- Returns:
- A cloned cached array of the matching panels.The array of matching panels, can be a mix of virtualized and non-virtualized panels! 
 
- requestUILockRequests a UI lock state. The object returned can be used to set a message below the lock spinner. It can also be used to set a progress indicator, also below the spinner. A progress indicator can also be handled using the lock object.- Note: You MUST call the objects - {link @ILockState#release()}method to release the lock state.- Specified by:
- requestUILockin interface- IClientSessionGyro
- Returns:
- The lock state object.
- Throws:
- IllegalStateException- If the client session is disposed of.
 
- setBusySets the UI busy state and optionally updates the message and/or progress.- This method is intended to be used with advanced UI programming where a message is used in conjunction with a progress. - If this functionality is not required, it is recommended to let the AppSessionGyro handle the busy state. - Specified by:
- setBusyin interface- IClientSessionGyro
- Parameters:
- msg- Optional message, null for none.
- delay- Delay of lock spinner: -2 for default (1.5 second), -1 disabled, 0=no delay, >0 wait time in milliseconds (1-20000, i.e. 20 seconds).
- progress- Progress value, -1 for none, otherwise a value between 0 and 100.
- Throws:
- IllegalArgumentException- If progress value is not -1 or 0 to 100, or delay is smaller than -2 or larger than 20000.
 
- setReadypublic void setReady()Sets the UI to "ready", i.e. clears busy state.- Note: the state is not set to ready immediately, merely the busy state. The UI is triggered to be synchronized with the VirtualSpace in the Client Worker thread, and a change of panel may be the result. - This method is intended to be used with advanced UI programming where a message is used in conjunction with a progress. - If this functionality is not required, it is recommended to let the AppSessionGyro handle the busy state. - Specified by:
- setReadyin interface- IClientSessionGyro
 
- setReadySets the UI to "ready", i.e. clears busy state.- Note: the state is not set to ready immediately, merely the busy state. The UI is triggered to be synchronized with the VirtualSpace in the Client Worker thread, and a change of panel may be the result. - Specify a runnable instance if you wish to be notified when the panel is unlocked. This runnable will be called at a later stage from the Client Worker thread. - The runnable will be be called if the busy state is turned on or the client has been locked. - This method is intended to be used with advanced UI programming where a message is used in conjunction with a progress. - If this functionality is not required, it is recommended to let the AppSessionGyro handle the busy state. - Specified by:
- setReadyin interface- IClientSessionGyro
- Parameters:
- runnable- The runnable to be notified, null for none.
- Returns:
- true if the runnable will be called (if present), false if it will not be called.
 
- enterClientLockpublic void enterClientLock- (boolean isFromClient) Method called whenever the client lock state is enabled.- Specified by:
- enterClientLockin interface- IClientSessionGyro
- Parameters:
- isFromClient- Flag indicating the state change is induced from client side. If this flag is false, the lock state
 
- exitClientLockpublic void exitClientLock()Releases client lock state if the client is not in busy state. The lock state will be released when the VS has been synchronized at a later stage, but very quickly.- Specified by:
- exitClientLockin interface- IClientSessionGyro
 
- getHistoryRequestGets the history request instance for the client session.- Specified by:
- getHistoryRequestin interface- IClientSessionGyro
- Returns:
- This client session's instance for history requests, never changes during the session's lifetime.
 
- addHistoryEntryAdds a new focus entry at the current location for this client session. The VirtualSpace and UI location is recorded to the previous and forward locations in the entry.- The entry is added at the current index and will clear all forward operations at that point to the end, i.e. - IAppHistory.clearForwardEntries()- Once added, the history entry forward and backward information can be set or adjusted. - Specified by:
- addHistoryEntryin interface- IClientSessionGyro
- Returns:
- The newly added history entry, null if history operations are currently in progress (i.e. a forward or backward history operation is running).
 
- synchronizeCurrentFocusWithVSpublic boolean synchronizeCurrentFocusWithVS()Updates the focus to the VS from the current focused UI component. This may be needed to synchronize the VS focus for a particular UI session to make sure it is synchronized.- Specified by:
- synchronizeCurrentFocusWithVSin interface- IClientSessionGyro
- Returns:
- true for success, false if nothing was done.
 
- setPseudoActionFocusToVSCalled when a "pseudo UI action" is executed, making sure its VS counterpart has the current focus. This "pseudo action" can be e.g. a MLItemProp that has a context menu, as well as an direct action such as a UIButton.- This method is not intended to be called but is used internally by the framework. - Specified by:
- setPseudoActionFocusToVSin interface- IClientSessionGyro
- Parameters:
- focusComp- The "pseudo action" focus component.
- trigger- The trigger component, null for none.
 
- onFocusChangedpublic void onFocusChanged- (IFocusComp newComp, IFocusComp oldComp, IGProp<?> trigger, boolean isRemoteInduced, boolean isInternal) Called when focus changes.- Specified by:
- onFocusChangedin interface- IGyroFocusEngineOwner
- Parameters:
- newComp- New focus component.
- oldComp- Old focus component.
- trigger- The trigger property, null for none.
- isRemoteInduced- If the event is remote induced.
- isInternal- The internal flag as specified in the- setFocusmethod to the focus engine.
 
- onFocusVetoChangeCalled to perform veto.- Specified by:
- onFocusVetoChangein interface- IGyroFocusEngineOwner
- Parameters:
- event- The focus event, InternalFocusEvent perhaps.
- Throws:
- FocusVetoException- When the focus is veto'ed.
 
- getCurrentFocusReturns the current focus in the UI. If no particular component is in focus, the panel that last has focus or the topmost panel is returned.- Specified by:
- getCurrentFocusin interface- IClientSessionGyro
- Returns:
- The component in focus, or null if not a single panel has yet been created.
 
- installFontsInstalls the font face as specified by the- FontFilesinstance for the Client Session. Once installed, the font family can be used.- Parameters:
- fontList- The list of font files to install.
- Returns:
- true for success, false if the remote part doesn't support installation, e.g. in a preview browser.
 
- installFontInstalls the font families as specified by the font family.- Parameters:
- fontFamily- The font family or families.
- Returns:
- true for success, false if the remote part doesn't support installation, e.g. in a preview browser.
 
- getClientContextMenuReferenceGets the reference to use for a context menu.- Parameters:
- contextMenu- The context menu.
- Returns:
- The reference to use, empty string for none (never null).
 
- getClientContextMenuReferenceGets the reference to use for a context menu.- Specified by:
- getClientContextMenuReferencein interface- IClientSessionGyro
- Parameters:
- contextMenu- The context menu.
- fullPropReference- Flag indicating a full property reference string should be returned, false for short (used internally by the server).
- Returns:
- The reference to use, empty string for none (never null).
- Throws:
- IllegalArgumentException- If the context menu is not a stand-alone context menu but a child of a panel component.
 
- getLocaleGets the local info class instance.- Specified by:
- getLocalein interface- ILocaleString
- Returns:
- The locale info class instance when the client environment has been set, otherwise the default client locale info instance specified for the server.
 
- setLocaleChanges or sets the LocaleInfo for the environment.- Specified by:
- setLocalein interface- IClientSessionGyro
- Parameters:
- locale- localeInfo The locale information to use.
- Returns:
- The old LocaleInfo, or null if not set.
 
- getLocaleKStringGets the KString of a particular ID from the app's text tables that are flagged to also handle LocaleString's depending on the flag.- Specified by:
- getLocaleKStringin interface- ILocaleString
- Parameters:
- id- The text ID.
- system- Flagged to handle system strings for LocaleString's.
- Returns:
- The KString for the text ID in current locale, null if not found.
 
- messageBoxpublic void messageBox- (IMessageBoxReply reply, IMessageBox.Icon icon, KString title, KString message, KString... buttons) Displays a message box with the specified title and message.- The callback is done in the client worker thread. - Specified by:
- messageBoxin interface- IMessageBox
- Parameters:
- reply- The reply callback that is called when the user chooses a button or session is closed,- nullfor none.
- icon- Icon to display, see the- {link Icon}enumeration.
- title- The title string, must be non-null.
- message- The message to display, must be non-null.
- buttons- The strings for the buttons to display, if none, just an- OKbutton is displayed. This array of buttons defined the index value returned by this method.
- Throws:
- NullPointerException- If- iconor- messageis null, or if any of the elements in- buttonsarray is null.
 
- toastpublic void toast- (KString message, IToaster.Position position, IToaster.Direction direction, IToaster.Type type, int duration) Displays a simple, unobstructive and ephemeral text message to the user.- Specified by:
- toastin interface- IToaster
- Parameters:
- message- The message to display, cannot be null.
- position- Position of toast, default value is Position.BOTTOM_CENTER if null.
- direction- Direction of the toast animation, default Direction.UP if null.
- type- Type of message style: message, warning, error of fatal, default is message if null.
- duration- Duration of the toast message being shown in ms. Valid values are in the interval [0, 10000], 0 for a sticky toast.
 
- getScreenWidthpublic int getScreenWidth()Gets the current screen width.- Specified by:
- getScreenWidthin interface- IClientSessionGyro
- Returns:
- The current screen width, or zero if not initialized.
 
- getScreenHeightpublic int getScreenHeight()Gets the current screen height.- Specified by:
- getScreenHeightin interface- IClientSessionGyro
- Returns:
- The current screen height, or zero if not initialized.
 
- getScreenSizeGets the current screen size.- Specified by:
- getScreenSizein interface- IClientSessionGyro
- Returns:
- The current screen size, zero width and/or height if not initialized.
 
- addScreenSizeListenerAdds a screen size listener for the client session. Calling this method multiple times with the same listener will have no effect (but to return false).- Specified by:
- addScreenSizeListenerin interface- IClientSessionGyro
- Parameters:
- listener- The listener to add.
- Returns:
- true if the listener was added, false otherwise.
- Throws:
- NullPointerException- If the listener is- null.
 
- removeScreenSizeListenerRemoves a screen size listener for the client session.- Specified by:
- removeScreenSizeListenerin interface- IClientSessionGyro
- Parameters:
- listener- The listener to remove.
- Returns:
- true if listener is successfully removed, false otherwise.
 
- isScreenOrientationLockSupportedpublic boolean isScreenOrientationLockSupported()Checks if screen orientation locking is supported or not.- Specified by:
- isScreenOrientationLockSupportedin interface- IClientSessionGyro
- Returns:
- true if the functions to lock or unlock screen orientation are supported, false otherwise.
 
- addScreenOrientationListenerAdds a screen orientation listener for the client session. Calling this method multiple times with the same listener will have no effect (but to return false).- Specified by:
- addScreenOrientationListenerin interface- IClientSessionGyro
- Parameters:
- listener- The listener to add.
- Returns:
- true if the listener was added, false otherwise.
- Throws:
- NullPointerException- If the listener is- null.
 
- removeScreenOrientationListenerRemoves a screen orientation listener for the client session.- Specified by:
- removeScreenOrientationListenerin interface- IClientSessionGyro
- Parameters:
- listener- The listener to remove.
- Returns:
- true if listener is successfully removed, false otherwise.
 
- getScreenOrientationGets the current screen orientation.- Specified by:
- getScreenOrientationin interface- IClientSessionGyro
- Returns:
- The orientation, ScreenOrientation.unknownif not supported.
 
- setScreenOrientationLocks the screen orientation.- Note that there may be a delay in the orientation change after calling this method. This could be due to slow client connection, disconnected client or just due to device lag. - Specified by:
- setScreenOrientationin interface- IClientSessionGyro
- Parameters:
- orientation- The orientation.
- Returns:
- true for success, false for not supported.
- Throws:
- IllegalArgumentException- If- orientationis- ScreenOrientation.unknown.
 
- unlockScreenOrientationpublic boolean unlockScreenOrientation()Unlocks the screen orientation.- Note that there may be a delay in the orientation change after calling this method. This could be due to slow client connection, disconnected client or just due to device lag. - Specified by:
- unlockScreenOrientationin interface- IClientSessionGyro
- Returns:
- true for success, false for not supported.
 
- getImageGets an image definition from the image container for the client session.- Specified by:
- getImagein interface- IRuntimeImageCache
- Parameters:
- name- The image name.
- Returns:
- The predefined image definition, or null if not found.
 
- setImageAdds the image definition to the image container for the client session. If the image already exists, it is replaced with the new definition.- Specified by:
- setImagein interface- IRuntimeImageCache
- Parameters:
- image- The image definition.
- Returns:
- true if the container was changed, i.e. image was added or replaced, false for no change.
 
- removeImageRemoves an image with a name from the client session.- Specified by:
- removeImagein interface- IRuntimeImageCache
- Parameters:
- name- The image to remove.
- Returns:
- true for removed, false if not found.
 
- clearImageCachepublic void clearImageCache()Clears the entire cache.- Specified by:
- clearImageCachein interface- IRuntimeImageCache
 
- getLocationServiceReturns an instance of the geolocation service.- Specified by:
- getLocationServicein interface- IClientSessionGyro
- Returns:
- The instance, always non-null.
 
- sendStatSends statistics event to the analytics engine on the client to log the event.- Specified by:
- sendStatin interface- IClientSessionGyro
- Parameters:
- event- The event name.
- params- Parameters to send, null values and sensitive parameters are ignored.
 
- saveDeviceParametersSaves parameters on the client device for the current app.- Sensitive parameters are encrypted with a key kept on the server side. The encrypted data is padded and sent to the client and no key is used on the client side. Only the fingerprint of the server key used is included in the encrypted data. This means that the sensitive parameter is virtually undecipherable on the client side. - Specified by:
- saveDeviceParametersin interface- IClientSessionGyro
- Parameters:
- params- Parameters to save. A- DeviceParametervalue of- nullmeans that the device parameter and its value is removed from storage. Upon return of this method, each- DeviceParameterof- paramsis updated with a new state. Possible states are- DeviceParameter.State.SUCCESS,- DeviceParameter.State.UNAVAILABLE,- DeviceParameter.State.NOT_FOUNDor- DeviceParameter.State.ENCRYPT_ERROR.
- Returns:
- truefor success of at least one device parameter,- falsefor failure (or no parameters to save). In case of functional failure (i.e. not if a device parameter is not found), an error is logged in the server.
 
- getDeviceParametersRetrieves parameters from the client device for the current app. The variables values and state are filled in before the return of this method call. The state indicates success, some error or if the parameter is not found. The state for each- DeviceParameteris either- DeviceParameter.State.SUCCESS,- DeviceParameter.State.NOT_FOUND,- DeviceParameter.State.UNAVAILABLEor- DeviceParameter.State.DECRYPT_ERROR.- Specified by:
- getDeviceParametersin interface- IClientSessionGyro
- Parameters:
- params- The parameters to retrieve.
- Returns:
- truefor success,- falseif device parameters are not present. The return code is- trueif at least one device parameter was successfully retrieved. If- falseis returned and the- DevParamsinstance is not found in- EnvPropsfor the client, an error is logged in the server.
 
- triggerRemoteOpenWindowpublic boolean triggerRemoteOpenWindow- (String url, String target, WindowOptions options, IWindowCloseListener windowListener) Triggers opening of a browser window on the client.- Specified by:
- triggerRemoteOpenWindowin interface- IClientSessionGyro
- Parameters:
- url- The URL to open.
- target- The target, null for _blank.
- options- Options to use, null for "new tab" for a browser client.
- windowListener- Callback to listen to blocked or user close window, null for none. When "spawn mode" is used in the- options, this parameter is ignored, i.e. as if set to- null.
- Returns:
- true for success, false if the window cannot be opened because another window already is open or that the session is disposed of. In case of failure, any callback close listener will not be invoked.
 
- triggerRemoteCloseWindowpublic boolean triggerRemoteCloseWindow- (boolean ignoreCallbackListener) Triggers closing of the window on the client that was opened with triggerRemoteOpenWindow.- Specified by:
- triggerRemoteCloseWindowin interface- IClientSessionGyro
- Parameters:
- ignoreCallbackListener- Flag to ignore calling a potential callback listener.
- Returns:
- true for success, false if no open window is present.
 
- restartRemoteClientpublic void restartRemoteClient()Restarts the remote client. This is done without asking anything: it will just restart the iiziRun or browser by disconnecting from server and reloading the page directly. For iiziRun Developer/Custom sessions, this will bring up that interface.- Specified by:
- restartRemoteClientin interface- IClientSessionGyro