Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## things.thinger.service.local
Class HttpCLIService

    java.lang.Object
      java.lang.Thread
          things.thinger.kernel.ThingsProcess
              things.thinger.service.Service
                  things.thinger.service.local.CLIBackbone
                      things.thinger.service.local.HttpCLIService

All Implemented Interfaces:
  java.lang.Runnable, Verbose, ControlInterface, ProcessInterface, ResourceListener, CLIServiceConstants

    public class HttpCLIService

extends CLIBackbone

A Http Service that will bridge to the CLIServer. This is a real cheap ploy for now. I just want to submit CLI commands via HTTP. If the CLIServer is not running, it will fail. The decoded get URL will be handed to transaction tender and the complete response will be sent back. Single threaded too! Dern I suck bad! < p> This requires the LISTEN_PORT (listen) to be set as a local parameter.

Version:
  1.0

  Version History

      EPG - Initial - 6 NOV 07

Author:
  Erich P. Gatejen

Nested Class Summary

Nested classes/interfaces inherited from class java.lang.Thread
`java.lang.Thread.UncaughtExceptionHandler`

Field Summary

Fields inherited from class things.thinger.service.local.CLIBackbone
`transactionInterface`

Fields inherited from class things.thinger.service.Service
`myLogger`

Fields inherited from class things.thinger.kernel.ThingsProcess
`DEFAULT_NAME, internalResult, myPostLogger, ssi`

Fields inherited from class java.lang.Thread
`MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY`

Fields inherited from interface things.thinger.service.local.CLIServiceConstants
`COMMAND_HELP, COMMAND_KILL, COMMAND_KILL_PID, COMMAND_KILL_PID_POSITION, COMMAND_PING, COMMAND_PING_WHISPER, COMMAND_PING_WHISPER_POSITION, COMMAND_PROCESSLIST, COMMAND_PROCESSLIST_LOG_VALUE, COMMAND_QUIT, COMMAND_RUN, COMMAND_RUN_NAME, COMMAND_RUN_NAME_POSITION, COMMAND_SETPROP, COMMAND_SETPROP_NAME, COMMAND_SETPROP_NAME_POSITION, COMMAND_SETPROP_VALUE, COMMAND_SETPROP_VALUE_POSITION, COMMAND_SHOWPROPS, COMMAND_SHOWPROPS_LOG_VALUE, HELP, POSITION_ARG1, POSITION_ARG2, POSITION_COMMAND, ROLLUP_WAIT`

Constructor Summary
`HttpCLIService()`

Method Summary
`void` | `constructThingsProcess()` Complete construction.
`static java.lang.String` | `decodeUri(java.io.BufferedInputStream bis)` Pull the URI.
`void` | `destructThingsProcess()` Destroy.
`void` | `executeThingsProcess()` This is the entry point for the actual processing.
`WhoAmI` | `getListenerId()` Get the ID of the listener.
`java.lang.String` | `getProcessName()` Get process name.
`void` | `resourceRevocation(WhoAmI resourceID)` The identified resource is in the process of being revoked.
`void` | `resourceRevoked(WhoAmI resourceID)` The identified resource bas been revoked.
`void` | `serviceOff()` Called to turn the service off.
`void` | `serviceOn()` Called to turn the service on.

Methods inherited from class things.thinger.service.local.CLIBackbone
`tender`

Methods inherited from class things.thinger.service.Service
`setLogger`

Methods inherited from class things.thinger.kernel.ThingsProcess
`acceptHalt, acceptPause, finalize, fix, forceFinalize, forceHalt, getCurrentState, getCurrentStateNumeric, getProcessId, getResult, getStartTime, getThingsState, init, isVerbose, release, releasePause, requestHalt, requestPause, run, screech, verboseOff, verboseOn`

Methods inherited from class java.lang.Thread
`activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield`

Methods inherited from class java.lang.Object
`clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Constructor Detail

### HttpCLIService

    public HttpCLIService()

Method Detail

### serviceOn

    public void serviceOn()
                   throws SystemException

  Called to turn the service on. This may be called by another thread.

  Specified by:
    `serviceOn` in class `Service`
  Throws:
    `SystemException`

### serviceOff

    public void serviceOff()
                    throws SystemException

  Called to turn the service off. This may be called by another thread.

  Specified by:
    `serviceOff` in class `Service`
  Throws:
    `SystemException`

### executeThingsProcess

    public void executeThingsProcess()
                              throws SystemException

  This is the entry point for the actual processing.

  Specified by:
    `executeThingsProcess` in class `ThingsProcess`
  Throws:
    `SystemException`

### constructThingsProcess

    public void constructThingsProcess()
                                throws SystemException

  Complete construction. This will be called when the process is initialized.

  Set up the listening port.

  Specified by:
    `constructThingsProcess` in class `ThingsProcess`
  Throws:
    `SystemException`

### destructThingsProcess

    public void destructThingsProcess()
                               throws SystemException

  Destroy. This will be called when the Process is finalizing.

  Specified by:
    `destructThingsProcess` in class `ThingsProcess`
  Throws:
    `SystemException`

### getProcessName

    public java.lang.String getProcessName()

  Get process name. It does not have to be a unique ID.

  Specified by:
    `getProcessName` in interface `ProcessInterface`
  Specified by:
    `getProcessName` in class `ThingsProcess`
  Returns:
    the name as a String

### resourceRevocation

    public void resourceRevocation(WhoAmI resourceID)
                            throws SystemException,
                                   java.lang.InterruptedException

  The identified resource is in the process of being revoked. It is still possible for the resource listener to call the resource within the context of this thread and call.

  Parameters:
    `resourceID` - the ID of the resource that is being revoked.
  Throws:
    `SystemException`
    `java.lang.InterruptedException`
  See Also:
    `WhoAmI`

### resourceRevoked

    public void resourceRevoked(WhoAmI resourceID)
                         throws SystemException,
                                java.lang.InterruptedException

  The identified resource bas been revoked. It is gone. Attempting to call it would be a very bad thing. The listener should remove the resource from it's internal lists..

  Parameters:
    `resourceID` - the ID of the resource that has been revoked.
  Throws:
    `SystemException`
    `java.lang.InterruptedException`
  See Also:
    `WhoAmI`

### getListenerId

    public WhoAmI getListenerId()

  Get the ID of the listener.

  Returns:
    The listener's ID.
  See Also:
    `WhoAmI`

### decodeUri

    public static java.lang.String decodeUri(java.io.BufferedInputStream bis)
                                      throws java.io.IOException,
                                             java.net.URISyntaxException,
                                             java.lang.NumberFormatException

  Pull the URI. Convert encoded characters.

  Parameters:
    `bis` - input stream
  Returns:
    The URI (which will be the command string.)
  Throws:
    `java.lang.Throwable` - If line is bad.
    `java.io.IOException`
    `java.net.URISyntaxException`
    `java.lang.NumberFormatException`

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Things.