Kernel Manager の Persistency コントロールは無意味だった orz
PRImagePersistency のプロセス.
process (Delay forDuration: self duration) wait. process := nil. self snapshot
こいつをブロックに入れて蹴り出している.
self isRunning ifTrue: [ ^ self ]. process := [ self process ] forkAt: 30 named: 'pier'
ちゃんと読めば判るとおり,こいつは実行後に自決するんである.じゃ,こいつを起こすのは誰?
PRCommand>>execute "Execute the command of the receiver. To implement your action in the code of one of my subclasses. Never override this message, but instead have a look at the different template methods (==#doValidate==, ==#doExecute==, ==#doAnswer==) available in the events protocol." self assert: self context command == self. self isView ifTrue: [ self shouldNotImplement ]. self timestamp: TimeStamp now. self kernel persistency execute: self. self doAnswer'
クラス階層は以下のとおり.
PRCommand #('timestamp' 'context' 'answer' 'checked') PRAddCommand #('name' 'type' 'link') PRChangeEnvironment #('environment') PRComponentSettings #('settings') PREditCommand #('fields') PRLocationCommand #('name' 'target') PRCopyCommand #() PRMoveCommand #() PRRemoveCommand #() PRViewCommand #() PUChangeSecurity #('with' 'all' 'hidden' 'operator' 'permissions') PUChangeGroup #('group') PUChangeOther #() PUChangeOwner #('owner') PUChangeUser #('ancestor') NRPUChangePassword #('username' 'password1' 'password2' 'user') PULogin #('username' 'password' 'user') PULogout #()
つまり,昨日の Kernel Manager のうち, Persistency に関するものは意味がねぇってこった orz.
PRPierControlPanel
以下はもう配布してないと思うけど, Seaside + Magma +Pier の Squeak3.9-RC2-7064-SMP と呼ばれていたブライトン・パッケージ (Brighton... an image of pier 1.0.5 alpha++.) の /seaside/pier/ の PRPierControlPanel.
今の Pier にはもうこのクラスはないが, WADispatcherEditorPlugin subclass: #PRPierControlPanel
となっている.スーパー・クラス自体はあるし, canBeRoot
で true
を返して クラスの initialize
時 に WADispatcherEditor addPlugin: self
するようにしとけば表示されるっぽい.お〜.
0 件のコメント:
コメントを投稿