rcp 0.0.3 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (4) hide show
  1. data/bin/rcp +7 -24
  2. data/lib/rcp.rb +30 -0
  3. metadata +2 -2
  4. data/lib/rcp +0 -29
data/bin/rcp CHANGED
@@ -1,29 +1,12 @@
1
1
  #!/usr/bin/env ruby
2
2
 
3
- require "clipboard"
4
- require "json"
5
- require "net/http"
6
- require "uri"
7
-
8
- if (ARGV.size > 0)
9
- content = ARGV.join(' ')
3
+ require 'rcp'
10
4
 
11
- uri = URI.parse("http://morning-wave-3539.herokuapp.com/items")
12
-
13
- http = Net::HTTP.new(uri.host, uri.port)
14
- request = Net::HTTP::Post.new(uri.request_uri)
15
-
16
- request.set_form_data({ "item[content]" => content })
17
- response = http.request(request)
18
- puts response
19
- end
20
-
21
- if (ARGV.size == 0)
22
- uri = URI.parse("http://morning-wave-3539.herokuapp.com/items/pop")
23
- response = Net::HTTP.get_response(uri)
24
- response_json = JSON.parse(response.body)
5
+ rcp = RemoteCopy.new
6
+ content = ARGV.join(' ')
25
7
 
26
- content = response_json["item"]["content"]
27
-
28
- Clipboard.copy(content)
8
+ if (content.empty?)
9
+ rcp.pull
10
+ else
11
+ rcp.push(content)
29
12
  end
data/lib/rcp.rb ADDED
@@ -0,0 +1,30 @@
1
+ require "clipboard"
2
+ require "json"
3
+ require "net/http"
4
+ require "uri"
5
+
6
+ class RemoteCopy
7
+ def push(content)
8
+ uri = URI.parse(base_remote)
9
+
10
+ http = Net::HTTP.new(uri.host, uri.port)
11
+ request = Net::HTTP::Post.new(uri.request_uri)
12
+
13
+ request.set_form_data({ "item[content]" => content })
14
+ response = http.request(request)
15
+ end
16
+
17
+ def pull
18
+ uri = URI.parse(base_remote + "/pop")
19
+ response = Net::HTTP.get_response(uri)
20
+ response_json = JSON.parse(response.body)
21
+
22
+ content = response_json["item"]["content"]
23
+
24
+ Clipboard.copy(content)
25
+ end
26
+
27
+ def base_remote
28
+ @base_remote ||= "http://morning-wave-3539.herokuapp.com/items"
29
+ end
30
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rcp
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.3
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -50,7 +50,7 @@ executables:
50
50
  extensions: []
51
51
  extra_rdoc_files: []
52
52
  files:
53
- - lib/rcp
53
+ - lib/rcp.rb
54
54
  - !binary |-
55
55
  YmluL3JjcA==
56
56
  homepage: http://rubygems.org/gems/rcp
data/lib/rcp DELETED
@@ -1,29 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require "clipboard"
4
- require "json"
5
- require "net/http"
6
- require "uri"
7
-
8
- if (ARGV.size > 0)
9
- content = ARGV.join(' ')
10
-
11
- uri = URI.parse("http://morning-wave-3539.herokuapp.com/items")
12
-
13
- http = Net::HTTP.new(uri.host, uri.port)
14
- request = Net::HTTP::Post.new(uri.request_uri)
15
-
16
- request.set_form_data({ "item[content]" => content })
17
- response = http.request(request)
18
- puts response
19
- end
20
-
21
- if (ARGV.size == 0)
22
- uri = URI.parse("http://morning-wave-3539.herokuapp.com/items/pop")
23
- response = Net::HTTP.get_response(uri)
24
- response_json = JSON.parse(response.body)
25
-
26
- content = response_json["item"]["content"]
27
-
28
- Clipboard.copy(content)
29
- end