Module ServerSide
In: lib/serverside.rb
lib/serverside/http.rb
lib/serverside/js.rb
lib/serverside/log.rb
lib/serverside/template.rb
lib/serverside/xml.rb

ServerSide is a web framework that make it easy to create custom light-weight web applications. It contains the following functionalities:

  1. A fast multithreaded HTTP server with support for persistent connections

and streaming.

  1. A static file handler.
  2. A daemon for controlling a server or a cluster of servers.
  3. A simple script for serving files or applications easily.
  4. A simple controller-view system for processing requests.

Methods

debug   error   fatal   info   log   log_error   log_request   logger   logger=   logger_level=   setup_stock_logger   warn  

Classes and Modules

Module ServerSide::HTTP
Class ServerSide::JS
Class ServerSide::Template
Class ServerSide::XML

Constants

REFERER = "Referer".freeze
USER_AGENT = "User-Agent".freeze
HOST = "Host".freeze
HOST_REGEXP = /([^\:]*)(\:(.*))?$/

Public Class methods

[Source]

    # File lib/serverside/log.rb, line 28
28:   def self.debug(text)
29:     @@logger.debug(text) if @@logger
30:   end

[Source]

    # File lib/serverside/log.rb, line 40
40:   def self.error(text)
41:     @@logger.error(text) if @@logger
42:   end

[Source]

    # File lib/serverside/log.rb, line 44
44:   def self.fatal(text)
45:     @@logger.fatal(text) if @@logger
46:   end

[Source]

    # File lib/serverside/log.rb, line 32
32:   def self.info(text)
33:     @@logger.info(text) if @@logger
34:   end

[Source]

    # File lib/serverside/log.rb, line 24
24:   def self.log(level, text)
25:     @@logger.log(level, text) if @@logger
26:   end

[Source]

    # File lib/serverside/log.rb, line 48
48:   def self.log_error(e)
49:     if @@logger
50:       @@logger.error("#{e.message}:\r\n" + e.backtrace.join("\r\n"))
51:     end
52:   end

[Source]

    # File lib/serverside/log.rb, line 59
59:   def self.log_request(c)
60:     if @@logger
61:       return unless request_line = c.request_line
62:       req_line.chomp!
63:       if c.method == :post && c.content_type == HTTP::Request::CONTENT_TYPE_URL_ENCODED
64:         req_line << " (#{r.body})"
65:       end
66:       host = (r.request_headers[HOST] || "") =~ HOST_REGEXP ? $1 : ""
67:       msg = "%s %s %s %s %s %s %s" % [
68:         r.client_name,
69:         host.inspect,
70:         request_line.inspect,
71:         r.status || '?',
72:         r.content_length || '?',
73:         (r.headers[REFERER] || "").inspect,
74:         (r.headers[USER_AGENT] || "").inspect
75:       ]
76:       @@logger.info(msg)
77:     end
78:   end

[Source]

   # File lib/serverside/log.rb, line 6
6:   def self.logger
7:     @@logger
8:   end

[Source]

    # File lib/serverside/log.rb, line 10
10:   def self.logger=(l)
11:     @@logger = l
12:   end

[Source]

    # File lib/serverside/log.rb, line 20
20:   def self.logger_level=(level)
21:     @@logger.level = level if @@logger
22:   end

[Source]

    # File lib/serverside/log.rb, line 14
14:   def self.setup_stock_logger(logdev, shift_age = 0, shift_size = 1048576)
15:     @@logger = Logger.new(logdev, shift_age, shift_size)
16:     @@logger.datetime_format = "%Y-%m-%d %H:%M:%S"
17:     @@logger
18:   end

[Source]

    # File lib/serverside/log.rb, line 36
36:   def self.warn(text)
37:     @@logger.warn(text) if @@logger
38:   end

[Validate]