Sha256: 4a44bde74ac4db5b217c92d1abc39c2a20175d8c5d52581003733c62099e7ff2

Contents?: true

Size: 1.16 KB

Versions: 24

Compression:

Stored size: 1.16 KB

Contents

require "spring/errors"
require "spring/json"

require "spring/client/command"
require "spring/client/run"
require "spring/client/help"
require "spring/client/binstub"
require "spring/client/stop"
require "spring/client/status"
require "spring/client/rails"
require "spring/client/version"
require "spring/client/server"

module Spring
  module Client
    COMMANDS = {
      "help"      => Client::Help,
      "-h"        => Client::Help,
      "--help"    => Client::Help,
      "binstub"   => Client::Binstub,
      "stop"      => Client::Stop,
      "status"    => Client::Status,
      "rails"     => Client::Rails,
      "-v"        => Client::Version,
      "--version" => Client::Version,
      "server"    => Client::Server,
    }

    def self.run(args)
      command_for(args.first).call(args)
    rescue CommandNotFound
      Client::Help.call(args)
    rescue ClientError => e
      $stderr.puts e.message
      exit 1
    end

    def self.command_for(name)
      COMMANDS[name] || Client::Run
    end
  end
end

# allow users to add hooks that do not run in the server
# or modify start/stop
if File.exist?("config/spring_client.rb")
  require "./config/spring_client.rb"
end

Version data entries

24 entries across 24 versions & 3 rubygems

Version Path
spring-4.3.0 lib/spring/client.rb
spring-4.2.1 lib/spring/client.rb
spring-4.2.0 lib/spring/client.rb
spring-4.1.3 lib/spring/client.rb
spring-4.1.2 lib/spring/client.rb
spring-4.1.1 lib/spring/client.rb
spring-4.1.0 lib/spring/client.rb
spring-4.0.0 lib/spring/client.rb
spring-3.1.1 lib/spring/client.rb
spring-3.1.0 lib/spring/client.rb
spring-3.0.0 lib/spring/client.rb
nrispring-2.1.3 lib/spring/client.rb
nrispring-2.1.2 lib/spring/client.rb
nrispring-2.1.1 lib/spring/client.rb
spring-2.1.1 lib/spring/client.rb
chatops-rpc-0.0.2 fixtures/chatops-controller-example/vendor/bundle/ruby/2.5.0/gems/spring-2.1.0/lib/spring/client.rb
chatops-rpc-0.0.1 fixtures/chatops-controller-example/vendor/bundle/ruby/2.5.0/gems/spring-2.1.0/lib/spring/client.rb
spring-2.1.0 lib/spring/client.rb
spring-2.0.2 lib/spring/client.rb
spring-2.0.1 lib/spring/client.rb