net-address 0.2.0 → 0.2.2

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: dc39be4370950044d0e5f2bb5c0ca1b7a77410894689e757679f768b3aa62022
4
- data.tar.gz: 60a6c90af147d3e6a7d20de2897d286dabdd5314bacaf587f36760f24ac6dccf
3
+ metadata.gz: cdecf23d5adb680caab30c05f6cc499943aebb43b65fd62c21d4cec7ea436e20
4
+ data.tar.gz: e7296ecc0708fbc34014562934ef721d1a4d572cb7239df5b0fcdd370b9e9289
5
5
  SHA512:
6
- metadata.gz: c98fbadf8d8cd07610256fbbeec9137259823f48ed003af09f53265b9e9dedf1dfbdba595f00f21ff2f7a6680208bb6a83f17065792e0d5013b954ee5a1e4348
7
- data.tar.gz: 26a9d42997f61d6c650d2b120db09a03031608ca3d180e1e86f4947a14f6ba54d0556d2af763f9d3aa13353268494f6c3681ab37ddfb5561a722deee50d0a86f
6
+ metadata.gz: 0d3b8ad59a6d40c453ded3e2375aa333348e85ca22e0355127fa221dd29210f4e63c94bcd8b11ccf9283bef0f73f6d0e0ce2c7ba110fcbc6d495d111ca7f8e02
7
+ data.tar.gz: bfa3794ca2baf6ae07f1a9ff9f1f6578d96c9a241921f8189a153fd2388ad21b5c11f4db0adf17b0eb69bce845f97dbce4fd6a8ee9607c7237a832e42ba08d3f
@@ -15,6 +15,13 @@ module Net
15
15
  attr_reader :mask
16
16
 
17
17
  def initialize(address, mask=nil)
18
+ if address.is_a?(String)
19
+ address = begin
20
+ JSON.parse address
21
+ rescue JSON::ParserError
22
+ address
23
+ end
24
+ end
18
25
  parse_address(address)
19
26
  if @mask.nil?
20
27
  @mask = Net::Address::Mask.new(mask.nil? ? 32 : mask)
@@ -47,7 +54,7 @@ module Net
47
54
  }
48
55
  end
49
56
 
50
- def to_json
57
+ def to_json(*params)
51
58
  to_h.to_json
52
59
  end
53
60
 
@@ -88,7 +95,10 @@ module Net
88
95
  private
89
96
 
90
97
  def parse_address(address)
91
- if address.kind_of?(Net::Address::IPv4)
98
+ if address.kind_of?(Hash)
99
+ parse_string(address['address'])
100
+ @mask = Net::Address::Mask.new address['mask']
101
+ elsif address.kind_of?(Net::Address::IPv4)
92
102
  @address = address.to_i
93
103
  @mask = address.mask
94
104
  elsif address.kind_of?(IPAddr)
@@ -1,5 +1,5 @@
1
1
  module Net
2
2
  module Address
3
- VERSION = "0.2.0"
3
+ VERSION = "0.2.2"
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: net-address
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Piotr Wojcieszonek
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2023-08-13 00:00:00.000000000 Z
11
+ date: 2023-08-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler