MiniDocs/src/MiniDocs/MiniDocsServer.class.st

54 lines
1.1 KiB
Smalltalk

Class {
#name : #MiniDocsServer,
#superclass : #Teapot,
#classInstVars : [
'storage',
'singleton'
],
#category : #MiniDocs
}
{ #category : #accessing }
MiniDocsServer class >> addStorage: anObject [
self storage add: anObject.
]
{ #category : #accessing }
MiniDocsServer class >> initialize [
self addStorage: FileLocator documents / 'lepiter' / 'default'
]
{ #category : #accessing }
MiniDocsServer class >> isRunning [
^ self singleton server isRunning
]
{ #category : #accessing }
MiniDocsServer class >> restart [
self stopAll.
^ self start
]
{ #category : #accessing }
MiniDocsServer class >> singleton [
^ singleton
]
{ #category : #accessing }
MiniDocsServer class >> start [
self initialize.
^ singleton := self superclass on
serveStatic: '/lepiter/doc/' from: self storage first pathString;
start
]
{ #category : #accessing }
MiniDocsServer class >> storage [
^ storage ifNil: [ storage := OrderedCollection new]
]
{ #category : #accessing }
MiniDocsServer class >> storage: aFoldersOrderedCollection [
storage := aFoldersOrderedCollection
]