0001
import Foundation
0002 import Dynamo
0003
0004 #if os(Linux)
0005 import Glibc
0006 #endif
0007
0008 system( "tar xfz site.tgz -C ~" )
0009
0010 _ = DynamoWebServer( portNumber: 8080, swiftlets: [
0012 LoggingSwiftlet( logger: dynamoTrace ),
0013 ExampleAppSwiftlet( pathPrefix: "/example" ),
0014 SessionSwiftlet( pathPrefix: "/ticktacktoe", appClass: TickTackToeSwiftlet.self, cookieName: "TTT" ),
0015 SessionSwiftlet( pathPrefix: "/guesser", appClass: NumberGuesserSwiftlet.self, cookieName: "NBR" ),
0016 SSLProxySwiftlet( logger: { (msg) in print( msg ) } ),
0017 ProxySwiftlet( logger: { (msg) in print( msg ) } ),
0018 DocumentSwiftlet( documentRoot: String.fromCString( getenv( "HOME" ) )!+"/Sites" )
0019 ] )
0020
0021 func pidLogger( msg: String ) {
0022 print( "\(getpid()): \(msg)" )
0023 }
0024
0025 #if os(Linux)
0026 _ = DynamoWorkerServer( portNumber: 8081, swiftlets: [
0028 LoggingSwiftlet( logger: pidLogger ),
0029 ExampleAppSwiftlet( pathPrefix: "/example" ),
0030 SSLProxySwiftlet( logger: pidLogger ),
0031 ProxySwiftlet( logger: pidLogger ),
0032 DocumentSwiftlet( documentRoot: String.fromCString( getenv( "HOME" ) )!+"/Sites" )
0033 ], workers: 4 )
0034 #endif
0035
0036 sleep( 1_000_000_000 )
0038