eXept Software AG Logo

Smalltalk/X Webserver

Documentation of class 'HTTPEmbeddedApplicationService':

Home

Documentation
www.exept.de
Everywhere
for:
[back]

Class: HTTPEmbeddedApplicationService


Inheritance:

   Object
   |
   +--HTTPService
      |
      +--HTTPSelectorService
         |
         +--HTTPEmbeddedApplicationService

Package:
stx:goodies/webServer
Category:
Net-Communication-HTTP-Services
Version:
rev: 1.45 date: 2017/06/12 19:03:41
user: cg
file: HTTPEmbeddedApplicationService.st directory: goodies/webServer
module: stx stc-classLibrary: webServer
Author:
Claus Gittinger

Description:


embedded applications setup:
----------------------------

     Applications must be registered (with an optional userName)
     in order for embedding to be allowed.
     Standard embedding is supported via the URL Server.embed.<appName>,
     however, an application may generate its own private embed page
     (have a look at self embed: and/or startApplication: for details)

     Registration is done by:
         self registerApplication:appClass
     or:
         self registerApplication:appClass forUser:userName

     The first allows any user to open the embedded application,
     the later requires that a user mapping (name+password) has been
     setup earlier and will lead to an authorization dialog to open
     in the www-broeser.

     For example, to only allow a user named 'TestUser' with password 'foo'
     to invoke embedded SystemBrowsers, you need the following procedure:

         aHTTPServer registerApplication:SystemBrowser forUser:'BrowserUser'.
         aHTTPServer mapName:'TestUser' password:'foo' to:'BrowserUser'.

     Then, the SystemBrowser can be opened in a page, by entering the URL
     Server.embed.SystemBrowser (usually, this is included in a generated
     page).


Class protocol:

configuring - setup
o  embeddedSmalltalkPackageFilename
self embeddedSmalltalkPackageFilename

o  embeddedSmalltalkPackageId

defaults
o  defaultEbeddedAppClasses

o  defaultReplyPresenterClass

o  linkName
return the default linkName path (with slash)

o  noRealmBehavior
allow access ONLY from localHost, if no realm was specified for this service

queries-service
o  settingsApplicationClass
a SettingsApplication class - or nil (used in the settings dialog if non-nil)


Instance protocol:

accessing
o  embeddedSmalltalkSupportDirectory
self new embeddedSmalltalkSupportDirectory

o  embeddedSmalltalkSupportDirectory: something

o  registeredApplicationClasses

o  registeredApplicationClasses: something

configuring - setup
o  setupEmbeddedSmalltalkSupportClasses
ensure, RemoteWorkstation and required classFiles are present for java applet

links-registration
o  webLinkForApplication: anApplicationClass name: linkName request: aRequest

o  webLinkForApplication: applicationClassOrSymbol request: aRequest
Return a link which starts up an embedded smalltalk application.

queries
o  useWeirdX

o  useWeirdX: aBoolean

queries-service
o  allowedMessages

o  defaultMessage

registration-apps
o  registerApplication: applicationClass
remember that applicationClass may be opened as application
by anyone.
(i.e. it is allowed to invoke an embed page)

o  registerApplication: applicationClass forRealm: aRealm
remember that applicationClass may be opened as application
by aUserName. (i.e. it is only allowed to authorized users)

o  unregisterApplication: applicationClass
forget that applicationClass may be opened as application
(i.e. it is no longer allowed to invoke an embed page)

registration-service
o  addRequiredForeignServicesTo: aServer
I need a file service for the bitmaps and icons

o  registerServiceOn: aServer

o  removeRequiredForeignServicesFrom: aServer

requests-helpers
o  registerClass: registerClassName request: aRequest
register aClass and response if not successful

o  startApplication: anApplicationClassOrName title: aTitle extent: extentOrNil for: aRequest
reply with an embedded stxApplet application;
this is neat, the returned page will lead to an embedded applet
to be loaded, which plays the application inside the browser page.

o  startRemoteWorkstationApplicationClass: anApplicationClass title: aTitle extent: extentOrNil for: aRequest
reply with an embedded stxApplet application;
this is neat, the returned page will lead to an embedded applet
to be loaded, which plays the application inside the browser page.

o  startWeirdXApplicationClass: anApplicationClass title: aTitle extent: extentOrNil for: aRequest
reply with an embedded stxApplet application;
this is neat, the returned page will lead to an embedded applet
to be loaded, which plays the application inside the browser page.

requests-server
o  getApplication: aRequest
embed something in the browsers view - wow !

o  maintenanceRegisterdApplications: aRequest
add and remove applications from registeredClasses

o  registeredApplicationList: aRequest
send a list of registered applications

settings persistency
o  settingSelectors
answer the selectors that are used to configure a service - i.e. those which are
saved in the webServer-settings file.

usage example(s):

     HTTPService new settingSelectors
     self new settingSelectors



ST/X 7.2.0.0; WebServer 1.670 at bd0aa1f87cdd.unknown:8081; Fri, 16 Apr 2021 10:55:50 GMT