WWT 0.0.2 → 0.0.3
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/WWT.gemspec +1 -1
- data/lib/WWT/WWTClient.rb +8 -4
- data/lib/WWT/WWT_layer.rb +6 -0
- data/lib/WWT/version.rb +1 -1
- metadata +4 -15
data/WWT.gemspec
CHANGED
data/lib/WWT/WWTClient.rb
CHANGED
@@ -1,7 +1,9 @@
|
|
1
1
|
require 'rest_client'
|
2
|
-
require '
|
2
|
+
require 'rexml/document'
|
3
3
|
require 'WWT/WWT_layer'
|
4
4
|
|
5
|
+
include REXML
|
6
|
+
|
5
7
|
class WWTClient
|
6
8
|
|
7
9
|
attr_accessor :url, :port
|
@@ -28,6 +30,8 @@ class WWTClient
|
|
28
30
|
end
|
29
31
|
|
30
32
|
def call_command(args_list,data="")
|
33
|
+
puts "#{@url}:#{@port}/layerApi.aspx?#{args_list}"
|
34
|
+
puts "data is #{data}"
|
31
35
|
parse_responce(RestClient.post "#{@url}:#{@port}/layerApi.aspx?#{args_list}", data)
|
32
36
|
|
33
37
|
end
|
@@ -50,10 +54,10 @@ class WWTClient
|
|
50
54
|
end
|
51
55
|
|
52
56
|
def parse_responce(responce)
|
53
|
-
|
54
|
-
parse = Hpricot(responce)
|
57
|
+
puts responce
|
55
58
|
raise "WWT error #{parse.search('h2').inner_html}"if responce.match(/Error/)
|
56
|
-
parse
|
59
|
+
parse = Document.new responce
|
60
|
+
parse.elements.to_a("/LayerApi/*") {|el| el.children.map{|c| {c.name =>{:content=>c.text, :properties=>c.attributes}}}}.first
|
57
61
|
end
|
58
62
|
|
59
63
|
end
|
data/lib/WWT/WWT_layer.rb
CHANGED
@@ -12,6 +12,7 @@ class WWT_layer
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def get_property(property_name)
|
15
|
+
puts "running get property"
|
15
16
|
name = WWT_layer.sanitize_property_name(property_name.to_s)
|
16
17
|
puts "#{name}"
|
17
18
|
result = @telescope.getprop :id=>layer_id, :propname => name
|
@@ -19,10 +20,15 @@ class WWT_layer
|
|
19
20
|
end
|
20
21
|
|
21
22
|
def set_property(property_name,args)
|
23
|
+
puts "running set property"
|
22
24
|
name = WWT_layer.sanitize_property_name(property_name.to_s)
|
23
25
|
@telescope.setprop :id => layer_id, :propname => name, :propvalue=>args
|
24
26
|
end
|
25
27
|
|
28
|
+
def update(args)
|
29
|
+
@telescope.update args.merge(:id=>layer_id)
|
30
|
+
end
|
31
|
+
|
26
32
|
def self.sanitize_property_name(name)
|
27
33
|
name.split("_").map{|w| w.capitalize}.join("")
|
28
34
|
end
|
data/lib/WWT/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: WWT
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-09-
|
12
|
+
date: 2011-09-25 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rest-client
|
16
|
-
requirement: &
|
16
|
+
requirement: &70128588440780 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,18 +21,7 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
25
|
-
- !ruby/object:Gem::Dependency
|
26
|
-
name: hpricot
|
27
|
-
requirement: &70242630577320 !ruby/object:Gem::Requirement
|
28
|
-
none: false
|
29
|
-
requirements:
|
30
|
-
- - ! '>='
|
31
|
-
- !ruby/object:Gem::Version
|
32
|
-
version: '0'
|
33
|
-
type: :runtime
|
34
|
-
prerelease: false
|
35
|
-
version_requirements: *70242630577320
|
24
|
+
version_requirements: *70128588440780
|
36
25
|
description: ! "This gem exposes the WWT remote API(or at least most of it) to ruby.
|
37
26
|
It works by sending given commands to an open port on the \n machine running
|
38
27
|
WWT."
|