palombe 0.2.0 → 0.3.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.
Files changed (3) hide show
  1. checksums.yaml +5 -5
  2. data/lib/palombe.rb +11 -9
  3. metadata +4 -18
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 69d03c441fd5bdccf57b9aac488b08ed6e328d58
4
- data.tar.gz: 623b015b7ae44b271da76a32a7493ca8ccfe30d9
2
+ SHA256:
3
+ metadata.gz: a52a818a693590a76ff953c1dc74b56d0487cfed44ca9f96c1d4b5ff18725e70
4
+ data.tar.gz: b5d4972efed3de8d06d14e52dda7f9ecc1aeb1450c8c467ac14aa14000f50c17
5
5
  SHA512:
6
- metadata.gz: 702f0ed8c02aea2beea6f099959c7309ed1d6bf5306e80536c6a7bf337d58af662ee2cf070d845ee12a5c4b5cecd919af5bfa932f469ba7b908db442245b8468
7
- data.tar.gz: 9d0ed17f4c9db0f25afe15e4774793fa132355b8c8ab813d20fa67d2abe1be47b3419112a3ccdfa9f76a07714513bfd5d8341b356b54d8a44fca370b24f208fb
6
+ metadata.gz: 052a3b9d41fa59bb8c98f6f297889e470cc52eca5982c2f4af781a1c3a8fae61b3c4c4312d39fa35885aeebbb6f7d31644ea9f834d28545059b4b121af263fc5
7
+ data.tar.gz: a8bf0a2ecd2bc9f7d8bc5839164c7482f94f24cc45a90ab68bb114756ed78ee45c4b260c2629021a2da308d039cf777938c6019cdd212152621be53d255da935
data/lib/palombe.rb CHANGED
@@ -1,25 +1,27 @@
1
- require "mkfifo"
2
-
3
1
  class Palombe
4
- PREFIX = "/tmp/palombe/"
2
+ def self.mkfifo name
3
+ prefix = "/tmp/palombe/"
4
+ Dir.mkdir prefix if !Dir.exist? prefix
5
+ path = "#{prefix}#{name}"
6
+ File.mkfifo(path) if !File.exist? path
7
+ path
8
+ end
5
9
 
6
10
  def self.send name, value
7
- Dir.mkdir PREFIX
8
- path = "#{PREFIX}#{name}"
9
- File.mkfifo(path)
10
- File.open(path, "w") do |f|
11
+ File.open((mkfifo name), "w") do |f|
11
12
  f.puts value
12
13
  end
13
14
  end
14
15
 
15
16
  def self.receive name
16
- path = "#{PREFIX}#{name}"
17
17
  value = ""
18
+ path = mkfifo name
18
19
  File.open(path, "r") do |f|
19
20
  while line = f.gets
20
21
  value += line
21
22
  end
22
23
  end
23
- value
24
+ File.delete path
25
+ value.chomp
24
26
  end
25
27
  end
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: palombe
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yvan Sraka
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-10-16 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: mkfifo
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: 0.1.1
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: 0.1.1
11
+ date: 2018-10-17 00:00:00.000000000 Z
12
+ dependencies: []
27
13
  description:
28
14
  email: yvan@sraka.pw
29
15
  executables: []
@@ -51,7 +37,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
51
37
  version: '0'
52
38
  requirements: []
53
39
  rubyforge_project:
54
- rubygems_version: 2.5.2.3
40
+ rubygems_version: 2.7.6
55
41
  signing_key:
56
42
  specification_version: 4
57
43
  summary: Palombe lets you send and receive messages synchronously through different