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.46 date: 2021/01/20 14:56:42
user: cg
file: HTTPEmbeddedApplicationService.st directory: goodies/webServer
module: stx stc-classLibrary: webServer

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).

copyright

COPYRIGHT (c) 2003 by eXept Software AG All Rights Reserved This software is furnished under a license and may be used only in accordance with the terms of that license and with the inclusion of the above copyright notice. This software may not be provided or otherwise made available to, or used by, any other person. No title to or ownership of the software is hereby transferred.

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
(comment from inherited method)
register myself as service on a single HTTPServer

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.7.0.0; WebServer 1.702 at 20f6060372b9.unknown:8081; Sun, 22 Dec 2024 06:42:42 GMT