WAApplication


Seaside-Session

Comment:



Hierarchy:

ProtoObject
Object
WARequestHandler
WAEntryPoint
WARegistry
WAApplication

Summary:

instance variables:

configuration libraries sessionClass

methods:

instance class
accessing basic configuration preferences request handling as yet unclassified

Detail:

instance variables:

configuration
InitialValue:
a WAUserConfiguration
inferredType:
WAUserConfiguration
libraries
InitialValue:
an OrderedCollection(WAStandardScripts WAStandardStyles)
inferredType:
OrderedCollection
sessionClass
inferredType:
UndefinedObject

instance methods:

accessing
baseUrl

	^ super baseUrl
		port: (self preferenceAt: #serverPort);
		hostname: (self preferenceAt: #serverHostname);
		scheme: (self preferenceAt: #serverProtocol);
		yourself
configurationComponent

	^ WAApplicationEditor new application: self
defaultLibraries

	^ Array with: WAStandardScripts with: WAStandardStyles
libraries

	^ libraries ifNil: [libraries _ OrderedCollection withAll: self defaultLibraries]
name

	| segments |
	segments _ basePath findTokens: '/'.
	^ segments isEmpty
		ifTrue: ['']
		ifFalse: [segments last ]

basic configuration
sessionClass

	^ configuration valueAt: #sessionClass

preferences
configuration

	^ configuration ifNil: [configuration _ WAUserConfiguration new addAncestor: self defaultAncestor]
defaultAncestor

	"yes, breaking layering"
	^ WARenderLoopConfiguration localConfiguration
preferenceAt: aSymbol

	^ self configuration valueAt: aSymbol
preferenceAt: aSymbol put: anObject

	^ self configuration valueAt: aSymbol put: anObject

request handling
handleDefaultRequest: aRequest

	|session|
	session _ self sessionClass application: self.
	^ session handleRequest: aRequest
updateRoot: anHtmlRoot

	anHtmlRoot title = '' ifTrue: [anHtmlRoot title: self basePath].
	self libraries do: [:ea | ea updateRoot: anHtmlRoot]

class methods:

as yet unclassified
description

	^ 'Seaside Application'
path: pathString

	^ self new basePath: pathString

^top


- made by Dandelion -