McQuery 0.1.2 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +17 -0
- data/Gemfile +3 -13
- data/LICENSE.txt +2 -0
- data/McQuery.gemspec +19 -58
- data/README.md +17 -22
- data/Rakefile +6 -43
- data/lib/McQuery.rb +3 -36
- data/lib/McQuery/version.rb +3 -0
- metadata +20 -81
- data/.document +0 -5
- data/Gemfile.lock +0 -44
- data/VERSION +0 -1
- data/test/helper.rb +0 -18
- data/test/test_McQuery.rb +0 -7
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 000551989c48261d1fca5b3a53fcc6d99a7afc92
|
4
|
+
data.tar.gz: 2e9474e3e372a0de63196a07fd8399dc96d62d65
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: bd0404690dd574e9f580c9fa8e54b22d95a5f7965c3202c250cff0cb38bd7a065e728dc011dacf879464caab7568b5725a2d067a2237d184a3040b6ef811b96f
|
7
|
+
data.tar.gz: c338619909c618e7290be979f60f0fa354eff80ad97fa6d86260d03e232f441dfdd9119faf8ffbde8ab59c493079e4d74d783477a1d3bbf80a7e92bfa876010c
|
data/.gitignore
ADDED
data/Gemfile
CHANGED
@@ -1,14 +1,4 @@
|
|
1
|
-
source
|
2
|
-
# Add dependencies required to use your gem here.
|
3
|
-
# Example:
|
4
|
-
# gem "activesupport", ">= 2.3.5"
|
1
|
+
source 'https://rubygems.org'
|
5
2
|
|
6
|
-
#
|
7
|
-
|
8
|
-
group :development do
|
9
|
-
gem "shoulda"
|
10
|
-
gem "rdoc"
|
11
|
-
gem "bundler"
|
12
|
-
gem "jeweler"
|
13
|
-
gem "simplecov"
|
14
|
-
end
|
3
|
+
# Specify your gem's dependencies in McQuery.gemspec
|
4
|
+
gemspec
|
data/LICENSE.txt
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
Copyright (c) 2013 Benjamin James Harrison-Sims
|
2
2
|
|
3
|
+
MIT License
|
4
|
+
|
3
5
|
Permission is hereby granted, free of charge, to any person obtaining
|
4
6
|
a copy of this software and associated documentation files (the
|
5
7
|
"Software"), to deal in the Software without restriction, including
|
data/McQuery.gemspec
CHANGED
@@ -1,62 +1,23 @@
|
|
1
|
-
#
|
2
|
-
|
3
|
-
|
4
|
-
|
1
|
+
# coding: utf-8
|
2
|
+
lib = File.expand_path('../lib', __FILE__)
|
3
|
+
$LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
|
4
|
+
require 'McQuery/version'
|
5
5
|
|
6
|
-
Gem::Specification.new do |
|
7
|
-
|
8
|
-
|
6
|
+
Gem::Specification.new do |spec|
|
7
|
+
spec.name = "McQuery"
|
8
|
+
spec.version = McQuery::VERSION
|
9
|
+
spec.authors = ["Benjamin James Harrison-Sims"]
|
10
|
+
spec.email = ["tehrainbowguy@gmail.com"]
|
11
|
+
spec.description = "Server ping for Minecraft. A work in progress."
|
12
|
+
spec.summary = "Server ping for Minecraft."
|
13
|
+
spec.homepage = "http://github.com/TehRainbowGuy/McQuery"
|
14
|
+
spec.license = "MIT"
|
9
15
|
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
s.email = "tehrainbowguy@gmail.com"
|
15
|
-
s.extra_rdoc_files = [
|
16
|
-
"LICENSE.txt",
|
17
|
-
"README.md"
|
18
|
-
]
|
19
|
-
s.files = [
|
20
|
-
".document",
|
21
|
-
"Gemfile",
|
22
|
-
"Gemfile.lock",
|
23
|
-
"LICENSE.txt",
|
24
|
-
"McQuery.gemspec",
|
25
|
-
"README.md",
|
26
|
-
"Rakefile",
|
27
|
-
"VERSION",
|
28
|
-
"lib/McQuery.rb",
|
29
|
-
"test/helper.rb",
|
30
|
-
"test/test_McQuery.rb"
|
31
|
-
]
|
32
|
-
s.homepage = "http://github.com/TehRainbowGuy/McQuery"
|
33
|
-
s.licenses = ["MIT"]
|
34
|
-
s.require_paths = ["lib"]
|
35
|
-
s.rubygems_version = "1.8.23"
|
36
|
-
s.summary = "Server ping for Minecraft."
|
16
|
+
spec.files = `git ls-files`.split($/)
|
17
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
18
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
19
|
+
spec.require_paths = ["lib"]
|
37
20
|
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
42
|
-
s.add_development_dependency(%q<shoulda>, [">= 0"])
|
43
|
-
s.add_development_dependency(%q<rdoc>, [">= 0"])
|
44
|
-
s.add_development_dependency(%q<bundler>, [">= 0"])
|
45
|
-
s.add_development_dependency(%q<jeweler>, [">= 0"])
|
46
|
-
s.add_development_dependency(%q<simplecov>, [">= 0"])
|
47
|
-
else
|
48
|
-
s.add_dependency(%q<shoulda>, [">= 0"])
|
49
|
-
s.add_dependency(%q<rdoc>, [">= 0"])
|
50
|
-
s.add_dependency(%q<bundler>, [">= 0"])
|
51
|
-
s.add_dependency(%q<jeweler>, [">= 0"])
|
52
|
-
s.add_dependency(%q<simplecov>, [">= 0"])
|
53
|
-
end
|
54
|
-
else
|
55
|
-
s.add_dependency(%q<shoulda>, [">= 0"])
|
56
|
-
s.add_dependency(%q<rdoc>, [">= 0"])
|
57
|
-
s.add_dependency(%q<bundler>, [">= 0"])
|
58
|
-
s.add_dependency(%q<jeweler>, [">= 0"])
|
59
|
-
s.add_dependency(%q<simplecov>, [">= 0"])
|
60
|
-
end
|
21
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
22
|
+
spec.add_development_dependency "rake"
|
61
23
|
end
|
62
|
-
|
data/README.md
CHANGED
@@ -1,34 +1,29 @@
|
|
1
|
-
|
1
|
+
# McQuery
|
2
2
|
|
3
3
|
Server ping for Minecraft.
|
4
4
|
|
5
|
-
|
6
|
-
require 'McQuery'
|
5
|
+
## Installation
|
7
6
|
|
8
|
-
|
7
|
+
Add this line to your application's Gemfile:
|
9
8
|
|
10
|
-
|
11
|
-
returns
|
9
|
+
gem 'McQuery'
|
12
10
|
|
13
|
-
|
14
|
-
{:pversion=>"51", :sversion=>"1.4.6", :motd=>"A Minecraft Server", :players=>{:online=>"0", :max=>"20"}}
|
11
|
+
And then execute:
|
15
12
|
|
16
|
-
|
13
|
+
$ bundle
|
17
14
|
|
18
|
-
|
15
|
+
Or install it yourself as:
|
19
16
|
|
20
|
-
|
21
|
-
|
22
|
-
* Check out the latest master to make sure the feature hasn't been implemented or the bug hasn't been fixed yet.
|
23
|
-
* Check out the issue tracker to make sure someone already hasn't requested it and/or contributed it.
|
24
|
-
* Fork the project.
|
25
|
-
* Start a feature/bugfix branch.
|
26
|
-
* Commit and push until you are happy with your contribution.
|
27
|
-
* Make sure to add tests for it. This is important so I don't break it in a future version unintentionally.
|
28
|
-
* Please try not to mess with the Rakefile, version, or history. If you want to have your own version, or is otherwise necessary, that is fine, but please isolate to its own commit so I can cherry-pick around it.
|
17
|
+
$ gem install McQuery
|
29
18
|
|
30
|
-
|
19
|
+
## Usage
|
31
20
|
|
32
|
-
|
33
|
-
further details.
|
21
|
+
See tests for usage.
|
34
22
|
|
23
|
+
## Contributing
|
24
|
+
|
25
|
+
1. Fork it
|
26
|
+
2. Create your feature branch (`git checkout -b my-new-feature`)
|
27
|
+
3. Commit your changes (`git commit -am 'Add some feature'`)
|
28
|
+
4. Push to the branch (`git push origin my-new-feature`)
|
29
|
+
5. Create new Pull Request
|
data/Rakefile
CHANGED
@@ -1,45 +1,8 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
require 'rubygems'
|
4
|
-
require 'bundler'
|
5
|
-
begin
|
6
|
-
Bundler.setup(:default, :development)
|
7
|
-
rescue Bundler::BundlerError => e
|
8
|
-
$stderr.puts e.message
|
9
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
10
|
-
exit e.status_code
|
11
|
-
end
|
12
|
-
require 'rake'
|
13
|
-
|
14
|
-
require 'jeweler'
|
15
|
-
Jeweler::Tasks.new do |gem|
|
16
|
-
# gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
|
17
|
-
gem.name = "McQuery"
|
18
|
-
gem.homepage = "http://github.com/TehRainbowGuy/McQuery"
|
19
|
-
gem.license = "MIT"
|
20
|
-
gem.summary = "Server ping for Minecraft."
|
21
|
-
gem.description = "Server ping for Minecraft."
|
22
|
-
gem.email = "tehrainbowguy@gmail.com"
|
23
|
-
gem.authors = ["Benjamin James Harrison-Sims"]
|
24
|
-
# dependencies defined in Gemfile
|
25
|
-
end
|
26
|
-
Jeweler::RubygemsDotOrgTasks.new
|
27
|
-
|
1
|
+
require "bundler/gem_tasks"
|
28
2
|
require 'rake/testtask'
|
29
|
-
Rake::TestTask.new(:test) do |test|
|
30
|
-
test.libs << 'lib' << 'test'
|
31
|
-
test.pattern = 'test/**/test_*.rb'
|
32
|
-
test.verbose = true
|
33
|
-
end
|
34
|
-
|
35
|
-
task :default => :test
|
36
|
-
|
37
|
-
require 'rdoc/task'
|
38
|
-
Rake::RDocTask.new do |rdoc|
|
39
|
-
version = File.exist?('VERSION') ? File.read('VERSION') : ""
|
40
3
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
end
|
4
|
+
Rake::TestTask.new do |t|
|
5
|
+
t.libs << "test"
|
6
|
+
t.test_files = FileList['test/test*.rb']
|
7
|
+
t.verbose = true
|
8
|
+
end
|
data/lib/McQuery.rb
CHANGED
@@ -1,38 +1,5 @@
|
|
1
|
-
require
|
1
|
+
require "McQuery/version"
|
2
|
+
require "McQuery/ping"
|
2
3
|
|
3
4
|
module McQuery
|
4
|
-
|
5
|
-
|
6
|
-
def initialize(hostname, port)
|
7
|
-
@hostname = hostname
|
8
|
-
@port = port
|
9
|
-
end
|
10
|
-
|
11
|
-
# Querys the Minecraft server
|
12
|
-
#
|
13
|
-
# @return [Hash] Items returned by the server.
|
14
|
-
def doPing
|
15
|
-
s = TCPSocket.open(@hostname, @port)
|
16
|
-
|
17
|
-
s.puts "\xFE\x01"
|
18
|
-
repl = s.gets
|
19
|
-
s.close
|
20
|
-
if repl[0] == "\xFF"
|
21
|
-
#Got kick continuing...
|
22
|
-
# length = repl[1,2].unpack('n').first
|
23
|
-
qstring = repl[3,repl.length].force_encoding("utf-16be").encode("utf-8")
|
24
|
-
qarray = qstring.split("\0")
|
25
|
-
qdict = {}
|
26
|
-
qdict[:pversion] = qarray[1]
|
27
|
-
qdict[:sversion] = qarray[2]
|
28
|
-
qdict[:motd] = qarray[3]
|
29
|
-
qdict[:players] = {:online => qarray[4], :max => qarray[5]}
|
30
|
-
return qdict
|
31
|
-
else
|
32
|
-
#Got wierd packet!
|
33
|
-
return nil
|
34
|
-
end
|
35
|
-
end
|
36
|
-
|
37
|
-
end
|
38
|
-
end
|
5
|
+
end
|
metadata
CHANGED
@@ -1,141 +1,80 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: McQuery
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
5
|
-
prerelease:
|
4
|
+
version: 0.2.0
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Benjamin James Harrison-Sims
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2013-01
|
11
|
+
date: 2013-05-01 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
|
-
- !ruby/object:Gem::Dependency
|
15
|
-
name: shoulda
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
|
-
requirements:
|
19
|
-
- - ! '>='
|
20
|
-
- !ruby/object:Gem::Version
|
21
|
-
version: '0'
|
22
|
-
type: :development
|
23
|
-
prerelease: false
|
24
|
-
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
30
|
-
- !ruby/object:Gem::Dependency
|
31
|
-
name: rdoc
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
|
-
requirements:
|
35
|
-
- - ! '>='
|
36
|
-
- !ruby/object:Gem::Version
|
37
|
-
version: '0'
|
38
|
-
type: :development
|
39
|
-
prerelease: false
|
40
|
-
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
46
13
|
- !ruby/object:Gem::Dependency
|
47
14
|
name: bundler
|
48
15
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
|
-
requirements:
|
51
|
-
- - ! '>='
|
52
|
-
- !ruby/object:Gem::Version
|
53
|
-
version: '0'
|
54
|
-
type: :development
|
55
|
-
prerelease: false
|
56
|
-
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
62
|
-
- !ruby/object:Gem::Dependency
|
63
|
-
name: jeweler
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
16
|
requirements:
|
67
|
-
- -
|
17
|
+
- - ~>
|
68
18
|
- !ruby/object:Gem::Version
|
69
|
-
version: '
|
19
|
+
version: '1.3'
|
70
20
|
type: :development
|
71
21
|
prerelease: false
|
72
22
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
23
|
requirements:
|
75
|
-
- -
|
24
|
+
- - ~>
|
76
25
|
- !ruby/object:Gem::Version
|
77
|
-
version: '
|
26
|
+
version: '1.3'
|
78
27
|
- !ruby/object:Gem::Dependency
|
79
|
-
name:
|
28
|
+
name: rake
|
80
29
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
30
|
requirements:
|
83
|
-
- -
|
31
|
+
- - '>='
|
84
32
|
- !ruby/object:Gem::Version
|
85
33
|
version: '0'
|
86
34
|
type: :development
|
87
35
|
prerelease: false
|
88
36
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
37
|
requirements:
|
91
|
-
- -
|
38
|
+
- - '>='
|
92
39
|
- !ruby/object:Gem::Version
|
93
40
|
version: '0'
|
94
|
-
description: Server ping for Minecraft.
|
95
|
-
email:
|
41
|
+
description: Server ping for Minecraft. A work in progress.
|
42
|
+
email:
|
43
|
+
- tehrainbowguy@gmail.com
|
96
44
|
executables: []
|
97
45
|
extensions: []
|
98
|
-
extra_rdoc_files:
|
99
|
-
- LICENSE.txt
|
100
|
-
- README.md
|
46
|
+
extra_rdoc_files: []
|
101
47
|
files:
|
102
|
-
- .
|
48
|
+
- .gitignore
|
103
49
|
- Gemfile
|
104
|
-
- Gemfile.lock
|
105
50
|
- LICENSE.txt
|
106
51
|
- McQuery.gemspec
|
107
52
|
- README.md
|
108
53
|
- Rakefile
|
109
|
-
- VERSION
|
110
54
|
- lib/McQuery.rb
|
111
|
-
-
|
112
|
-
- test/test_McQuery.rb
|
55
|
+
- lib/McQuery/version.rb
|
113
56
|
homepage: http://github.com/TehRainbowGuy/McQuery
|
114
57
|
licenses:
|
115
58
|
- MIT
|
59
|
+
metadata: {}
|
116
60
|
post_install_message:
|
117
61
|
rdoc_options: []
|
118
62
|
require_paths:
|
119
63
|
- lib
|
120
64
|
required_ruby_version: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
65
|
requirements:
|
123
|
-
- -
|
66
|
+
- - '>='
|
124
67
|
- !ruby/object:Gem::Version
|
125
68
|
version: '0'
|
126
|
-
segments:
|
127
|
-
- 0
|
128
|
-
hash: -1435843488024391521
|
129
69
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
130
|
-
none: false
|
131
70
|
requirements:
|
132
|
-
- -
|
71
|
+
- - '>='
|
133
72
|
- !ruby/object:Gem::Version
|
134
73
|
version: '0'
|
135
74
|
requirements: []
|
136
75
|
rubyforge_project:
|
137
|
-
rubygems_version:
|
76
|
+
rubygems_version: 2.0.3
|
138
77
|
signing_key:
|
139
|
-
specification_version:
|
78
|
+
specification_version: 4
|
140
79
|
summary: Server ping for Minecraft.
|
141
80
|
test_files: []
|
data/.document
DELETED
data/Gemfile.lock
DELETED
@@ -1,44 +0,0 @@
|
|
1
|
-
GEM
|
2
|
-
remote: http://rubygems.org/
|
3
|
-
specs:
|
4
|
-
activesupport (3.2.11)
|
5
|
-
i18n (~> 0.6)
|
6
|
-
multi_json (~> 1.0)
|
7
|
-
bourne (1.1.2)
|
8
|
-
mocha (= 0.10.5)
|
9
|
-
git (1.2.5)
|
10
|
-
i18n (0.6.1)
|
11
|
-
jeweler (1.8.4)
|
12
|
-
bundler (~> 1.0)
|
13
|
-
git (>= 1.2.5)
|
14
|
-
rake
|
15
|
-
rdoc
|
16
|
-
json (1.7.6)
|
17
|
-
metaclass (0.0.1)
|
18
|
-
mocha (0.10.5)
|
19
|
-
metaclass (~> 0.0.1)
|
20
|
-
multi_json (1.5.0)
|
21
|
-
rake (10.0.3)
|
22
|
-
rdoc (3.12)
|
23
|
-
json (~> 1.4)
|
24
|
-
shoulda (3.3.2)
|
25
|
-
shoulda-context (~> 1.0.1)
|
26
|
-
shoulda-matchers (~> 1.4.1)
|
27
|
-
shoulda-context (1.0.2)
|
28
|
-
shoulda-matchers (1.4.2)
|
29
|
-
activesupport (>= 3.0.0)
|
30
|
-
bourne (~> 1.1.2)
|
31
|
-
simplecov (0.7.1)
|
32
|
-
multi_json (~> 1.0)
|
33
|
-
simplecov-html (~> 0.7.1)
|
34
|
-
simplecov-html (0.7.1)
|
35
|
-
|
36
|
-
PLATFORMS
|
37
|
-
ruby
|
38
|
-
|
39
|
-
DEPENDENCIES
|
40
|
-
bundler
|
41
|
-
jeweler
|
42
|
-
rdoc
|
43
|
-
shoulda
|
44
|
-
simplecov
|
data/VERSION
DELETED
@@ -1 +0,0 @@
|
|
1
|
-
0.1.2
|
data/test/helper.rb
DELETED
@@ -1,18 +0,0 @@
|
|
1
|
-
require 'rubygems'
|
2
|
-
require 'bundler'
|
3
|
-
begin
|
4
|
-
Bundler.setup(:default, :development)
|
5
|
-
rescue Bundler::BundlerError => e
|
6
|
-
$stderr.puts e.message
|
7
|
-
$stderr.puts "Run `bundle install` to install missing gems"
|
8
|
-
exit e.status_code
|
9
|
-
end
|
10
|
-
require 'test/unit'
|
11
|
-
require 'shoulda'
|
12
|
-
|
13
|
-
$LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
14
|
-
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
15
|
-
require 'McQuery'
|
16
|
-
|
17
|
-
class Test::Unit::TestCase
|
18
|
-
end
|