Package org.jdrupes.vmoperator.vmaccess
Class VmAccess
java.lang.Object
org.jgrapes.core.internal.ComponentVertex
org.jgrapes.core.Component
org.jgrapes.webconsole.base.AbstractConlet<VmAccess.ResourceModel>
org.jgrapes.webconsole.base.freemarker.FreeMarkerConlet<VmAccess.ResourceModel>
org.jdrupes.vmoperator.vmaccess.VmAccess
- All Implemented Interfaces:
Iterable<ComponentType>
,Channel
,ComponentType
,Eligible
,Manager
public class VmAccess
extends org.jgrapes.webconsole.base.freemarker.FreeMarkerConlet<VmAccess.ResourceModel>
The Class
VmAccess
.The component supports the following configuration properties:
displayResource
: a map with the following entries:preferredIpVersion
:ipv4
oripv6
(default:ipv4
). Determines the IP addresses uses in the generated connection file.
deleteConnectionFile
:true
orfalse
(default:true
). Iftrue
, the downloaded connection file will be deleted by the remote viewer when opened.syncPreviewsFor
: a list objects with either propertyuser
orrole
and the associated name (default:[]
). The remote viewer will synchronize the previews for the specified users and roles.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic class
The Class AccessModel.static class
The periodically generated update event.Nested classes/interfaces inherited from class org.jgrapes.webconsole.base.AbstractConlet
org.jgrapes.webconsole.base.AbstractConlet.ConletTrackingInfo
Nested classes/interfaces inherited from interface org.jgrapes.core.Channel
Channel.Default
-
Field Summary
Fields inherited from class org.jgrapes.webconsole.base.AbstractConlet
TYPE_INSTANCE_SEPARATOR
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Optional
<VmAccess.ResourceModel> createNewState
(org.jgrapes.webconsole.base.events.AddConletRequest event, org.jgrapes.webconsole.base.ConsoleConnection connection, String conletId) protected Optional
<VmAccess.ResourceModel> createStateRepresentation
(Event<?> event, org.jgrapes.webconsole.base.ConsoleConnection connection, String conletId) protected void
doConletDeleted
(org.jgrapes.webconsole.base.events.ConletDeleted event, org.jgrapes.webconsole.base.ConsoleConnection channel, String conletId, VmAccess.ResourceModel conletState) protected Set
<org.jgrapes.webconsole.base.Conlet.RenderMode> doRenderConlet
(org.jgrapes.webconsole.base.events.RenderConletRequestBase<?> event, org.jgrapes.webconsole.base.ConsoleConnection channel, String conletId, VmAccess.ResourceModel model) protected boolean
doSetLocale
(org.jgrapes.webconsole.base.events.SetLocale event, org.jgrapes.webconsole.base.ConsoleConnection channel, String conletId) protected void
doUpdateConletState
(org.jgrapes.webconsole.base.events.NotifyConletModel event, org.jgrapes.webconsole.base.ConsoleConnection channel, VmAccess.ResourceModel model) void
Configure the component.void
onConsoleConfigured
(org.jgrapes.webconsole.base.events.ConsoleConfigured event, org.jgrapes.webconsole.base.ConsoleConnection connection) On console configured.void
onConsolePrepared
(org.jgrapes.webconsole.base.events.ConsolePrepared event, org.jgrapes.webconsole.base.ConsoleConnection connection) On console prepared.void
onConsoleReady
(org.jgrapes.webconsole.base.events.ConsoleReady event, org.jgrapes.webconsole.base.ConsoleConnection channel) OnConsoleReady
, fire theAddConletType
.void
On start.void
onVmDefChanged
(VmDefChanged event, VmChannel channel) Track the VM definitions and update conlets.void
onVmPoolChanged
(VmPoolChanged event) On vm pool changed.protected Optional
<VmAccess.ResourceModel> recreateState
(Event<?> event, org.jgrapes.webconsole.base.ConsoleConnection channel, String conletId) Methods inherited from class org.jgrapes.webconsole.base.freemarker.FreeMarkerConlet
doGetResource, fmConletModel, fmModel, fmModel, fmSessionModel, fmTypeModel, freemarkerConfig, processTemplate, processTemplate
Methods inherited from class org.jgrapes.webconsole.base.AbstractConlet
afterOnClosed, conletIds, conletIdsByConsoleConnection, conletViews, doRemoveConletType, generateInstanceId, l10nBundles, localizations, onAddConletRequest, onClosed, onConletDeleted, onConletResourceRequest, onDetached, onNotifyConletModel, onRenderConletRequest, onSetLocale, putInSession, readContent, readContent, removeState, resourceBundle, setPeriodicRefresh, stateFromSession, statesFromSession, supportedLocales, trackConlet, trackedConnections, type, typeFromId
Methods inherited from class org.jgrapes.core.Component
channel, component, defaultCriterion, isEligibleFor, setName
Methods inherited from class org.jgrapes.core.internal.ComponentVertex
activeEventPipeline, addHandler, attach, channelReplacements, children, componentPath, componentVertex, detach, fire, initComponentsHandlers, iterator, name, newEventPipeline, newEventPipeline, parent, registerAsGenerator, root, toString, unregisterAsGenerator
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
VmAccess
Creates a new component with its channel set to the given channel.- Parameters:
componentChannel
- the channel that the component’s handlers listen on by default and thatManager.fire(Event, Channel...)
sends the event to
-
-
Method Details
-
onStart
On start.- Parameters:
event
- the event
-
onConfigurationUpdate
Configure the component.- Parameters:
event
- the event
-
onConsoleReady
@Handler public void onConsoleReady(org.jgrapes.webconsole.base.events.ConsoleReady event, org.jgrapes.webconsole.base.ConsoleConnection channel) throws TemplateNotFoundException, MalformedTemplateNameException, ParseException, IOException OnConsoleReady
, fire theAddConletType
.- Parameters:
event
- the eventchannel
- the channel- Throws:
TemplateNotFoundException
- the template not found exceptionMalformedTemplateNameException
- the malformed template name exceptionParseException
- the parse exceptionIOException
- Signals that an I/O exception has occurred.
-
onConsoleConfigured
@Handler public void onConsoleConfigured(org.jgrapes.webconsole.base.events.ConsoleConfigured event, org.jgrapes.webconsole.base.ConsoleConnection connection) throws InterruptedException, IOException On console configured.- Parameters:
event
- the eventconnection
- the console connection- Throws:
InterruptedException
- the interrupted exceptionIOException
-
onConsolePrepared
@Handler public void onConsolePrepared(org.jgrapes.webconsole.base.events.ConsolePrepared event, org.jgrapes.webconsole.base.ConsoleConnection connection) On console prepared.- Parameters:
event
- the eventconnection
- the connection
-
createNewState
protected Optional<VmAccess.ResourceModel> createNewState(org.jgrapes.webconsole.base.events.AddConletRequest event, org.jgrapes.webconsole.base.ConsoleConnection connection, String conletId) throws Exception - Overrides:
createNewState
in classorg.jgrapes.webconsole.base.AbstractConlet<VmAccess.ResourceModel>
- Throws:
Exception
-
createStateRepresentation
protected Optional<VmAccess.ResourceModel> createStateRepresentation(Event<?> event, org.jgrapes.webconsole.base.ConsoleConnection connection, String conletId) throws Exception - Overrides:
createStateRepresentation
in classorg.jgrapes.webconsole.base.AbstractConlet<VmAccess.ResourceModel>
- Throws:
Exception
-
recreateState
protected Optional<VmAccess.ResourceModel> recreateState(Event<?> event, org.jgrapes.webconsole.base.ConsoleConnection channel, String conletId) throws Exception - Overrides:
recreateState
in classorg.jgrapes.webconsole.base.AbstractConlet<VmAccess.ResourceModel>
- Throws:
Exception
-
doRenderConlet
protected Set<org.jgrapes.webconsole.base.Conlet.RenderMode> doRenderConlet(org.jgrapes.webconsole.base.events.RenderConletRequestBase<?> event, org.jgrapes.webconsole.base.ConsoleConnection channel, String conletId, VmAccess.ResourceModel model) throws Exception - Specified by:
doRenderConlet
in classorg.jgrapes.webconsole.base.AbstractConlet<VmAccess.ResourceModel>
- Throws:
Exception
-
doConletDeleted
protected void doConletDeleted(org.jgrapes.webconsole.base.events.ConletDeleted event, org.jgrapes.webconsole.base.ConsoleConnection channel, String conletId, VmAccess.ResourceModel conletState) throws Exception - Overrides:
doConletDeleted
in classorg.jgrapes.webconsole.base.AbstractConlet<VmAccess.ResourceModel>
- Throws:
Exception
-
onVmDefChanged
@Handler(namedChannels="manager") public void onVmDefChanged(VmDefChanged event, VmChannel channel) throws IOException, InterruptedException Track the VM definitions and update conlets.- Parameters:
event
- the eventchannel
- the channel- Throws:
IOException
InterruptedException
-
onVmPoolChanged
@Handler(namedChannels="manager") public void onVmPoolChanged(VmPoolChanged event) throws InterruptedException On vm pool changed.- Parameters:
event
- the event- Throws:
InterruptedException
- the interrupted exception
-
doUpdateConletState
protected void doUpdateConletState(org.jgrapes.webconsole.base.events.NotifyConletModel event, org.jgrapes.webconsole.base.ConsoleConnection channel, VmAccess.ResourceModel model) throws Exception - Overrides:
doUpdateConletState
in classorg.jgrapes.webconsole.base.AbstractConlet<VmAccess.ResourceModel>
- Throws:
Exception
-
doSetLocale
protected boolean doSetLocale(org.jgrapes.webconsole.base.events.SetLocale event, org.jgrapes.webconsole.base.ConsoleConnection channel, String conletId) throws Exception - Overrides:
doSetLocale
in classorg.jgrapes.webconsole.base.AbstractConlet<VmAccess.ResourceModel>
- Throws:
Exception
-