summaryrefslogtreecommitdiff
path: root/new/bin/server.rb
blob: c46253de147f224d045e4bdd3b23dbd39842a310 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
require "launchy"

require_relative "../lib/crys"

module Crys
  class ServerRunner
    SPLASH_1 = <<-HEREDOC
 ▄████▄   ██▀███  ▓██   ██▓  ██████   ██████  ██▓▄▄▄█████▓▓█████ 
▒██▀ ▀█  ▓██ ▒ ██▒ ▒██  ██▒▒██    ▒ ▒██    ▒ ▓██▒▓  ██▒ ▓▒▓█   ▀ 
▒▓█    ▄ ▓██ ░▄█ ▒  ▒██ ██░░ ▓██▄   ░ ▓██▄   ▒██▒▒ ▓██░ ▒░▒███   
▒▓▓▄ ▄██▒▒██▀▀█▄    ░ ▐██▓░  ▒   ██▒  ▒   ██▒░██░░ ▓██▓ ░ ▒▓█  ▄ 
▒ ▓███▀ ░░██▓ ▒██▒  ░ ██▒▓░▒██████▒▒▒██████▒▒░██░  ▒██▒ ░ ░▒████▒
░ ░▒ ▒  ░░ ▒▓ ░▒▓░   ██▒▒▒ ▒ ▒▓▒ ▒ ░▒ ▒▓▒ ▒ ░░▓    ▒ ░░   ░░ ▒░ ░
  ░  ▒     ░▒ ░ ▒░ ▓██ ░▒░ ░ ░▒  ░ ░░ ░▒  ░ ░ ▒ ░    ░     ░ ░  ░
░          ░░   ░  ▒ ▒ ░░  ░  ░  ░  ░  ░  ░   ▒ ░  ░         ░   
░ ░         ░      ░ ░           ░        ░   ░              ░  ░
░                  ░ ░                                           
HEREDOC

    SPLASH_2 = <<-HEREDOC
     _/_/_/                                  _/_/_/  _/    _/               
  _/        _/  _/_/  _/    _/    _/_/_/  _/            _/_/_/_/    _/_/    
 _/        _/_/      _/    _/  _/_/        _/_/    _/    _/      _/_/_/_/   
_/        _/        _/    _/      _/_/        _/  _/    _/      _/          
 _/_/_/  _/          _/_/_/  _/_/_/    _/_/_/    _/      _/_/    _/_/_/     
                        _/                                                  
                   _/_/                                                     
HEREDOC
                                                                        
    SPLASH_3 = <<-HEREDOC
@@@@@@@  @@@@@@@   @@@ @@@   @@@@@@   @@@@@@   @@@  @@@@@@@  @@@@@@@@  
@@@@@@@@  @@@@@@@@  @@@ @@@  @@@@@@@  @@@@@@@   @@@  @@@@@@@  @@@@@@@@  
!@@       @@!  @@@  @@! !@@  !@@      !@@       @@!    @@!    @@!       
!@!       !@!  @!@  !@! @!!  !@!      !@!       !@!    !@!    !@!       
!@!       @!@!!@!    !@!@!   !!@@!!   !!@@!!    !!@    @!!    @!!!:!    
!!!       !!@!@!      @!!!    !!@!!!   !!@!!!   !!!    !!!    !!!!!:    
:!!       !!: :!!     !!:         !:!      !:!  !!:    !!:    !!:       
:!:       :!:  !:!    :!:        !:!      !:!   :!:    :!:    :!:       
::: :::  ::   :::     ::    :::: ::  :::: ::    ::     ::     :: ::::  
:: :: :   :   : :     :     :: : :   :: : :    :       :     : :: ::   
HEREDOC

    SPLASH = [SPLASH_1, SPLASH_2, SPLASH_3]

    def initialize(server_class:, root:, section:)
      @root = File.expand_path root
      @server = server_class.new(root: root)
      @section = section
    end

      def serve
        puts ""
        puts SPLASH.sample
        puts "Hello mms to \e[1m" + section + "\e[22m" 
        puts "Serving from: " + root
        puts ""
        server.start
    end

    private

    attr_reader :root, :server, :section
  end
end