Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

GShell Commands Structure

Image Modified

Build-in commands like set, clean, help, quit and so on are defined in gshell-builtin project
Geronimo commands like start-server,stop-server adn deploy commands like start-module are defined in geronimo-commands project.
Jaxws commands  are defined in  geronimo-jaxws-builder project.
Remote commands are defined in gshell-remote-client project.

GShell Startup progress progress 

Image Modified

Wiki Markup
1 org.codehaus.plexus.ClassLoader load every jar defined in etc/gsh-classworlds.conf
2 org.apache.geronimo.gshell.plugin.CommandDiscoverer load the commands.xml in gshell-builtin.jar/META-INF/gshell
3 All the commands register in org.apache.geronimo.gshell.registry..CommandRegistry.
4 The same process for geronimo-commands and jaws-commands
5 org.apache.geronimo.gshell.layout.loader.XMLLayoutLoader load the layout.xml in etc/layout.xml
6 GShell start up DefaultLayoutManager.
7 GShell start up org.apache.geronimo.gshell.DefaultCommandLineBuilder and DefaultCommandExecutor
8 Gshell read argument from console and read history from Document and Setting/\[username\]/.gshell/gshell.history
9 Finish initialization and waiting

...

You can find test command in help list and use test to see print line.

Image Added

Details in Geronimo-commands(Client)

Image Added

Geronimo command part:

Jmx->kenel->invoke(shutdown/getAttribute)
Basically, Geronimo stop and wait for server commands connect to remote/local server via jmx connections and get a MBeanServerConnection.Through MBeanServerConnection command get Kernel as Mbean and call invoke() method to shutdown or getAttribute.

Image Added

Deploy command part

Geronimo-deploy-tool->ServerConnection> ServerConnection->GeronimoDeploymentManager
Image Added

Details in geronimo-jmx-remoting(Server)

Build JMX Server progress

Image Added

Key codes

in JMXConnector in geronimo-jmx-remoting project

...