Class: Proxtopus::ResourceSet

Inherits:
Array
  • Object
show all
Defined in:
lib/proxtopus/resource_set.rb

Instance Method Summary collapse

Constructor Details

#initialize(resources = nil) ⇒ ResourceSet

Returns a new instance of ResourceSet.



4
5
6
7
8
# File 'lib/proxtopus/resource_set.rb', line 4

def initialize(resources=nil)
  if resources
    resources.each { |r| self.push(r) }
  end
end

Instance Method Details

#include?(resource) ⇒ Boolean

def shift(resource)

  if !resource.is_a?(Proxtopus::Resource) && !resource.is_a?(Hash)
    raise ArgumentError, "A ResourceSet may only contain Resource or Hash objects!"
  end

  if resource.is_a?(Hash)
    resource = Resource.new(resource['host'], resource['port'], resource['protocol'], resource['country'], resource['anonymity'])
  end

  super(resource) if !include?(resource)
  self
end

Returns:

  • (Boolean)


38
39
40
41
42
43
44
45
46
47
# File 'lib/proxtopus/resource_set.rb', line 38

def include?(resource)
  if resource.is_a?(Proxtopus::Resource)
    each do |p|
      return true if resource == p
    end
    false
  else
    false
  end
end

#push(resource) ⇒ Object



10
11
12
13
14
15
16
17
18
19
20
21
# File 'lib/proxtopus/resource_set.rb', line 10

def push(resource)
  if !resource.is_a?(Proxtopus::Resource) && !resource.is_a?(Hash)
    raise ArgumentError, "A ResourceSet may only contain Resource or Hash objects!"
  end
  
  if resource.is_a?(Hash)
    resource = Resource.new(resource)
  end
  
  super(resource) if !include?(resource)
  self
end