Sha256: 7cbd126f8fd91e096dc6dd1fcc1a78226ccea06d32e392e2275e05c3e0efd2b2

Contents?: true

Size: 656 Bytes

Versions: 73

Compression:

Stored size: 656 Bytes

Contents

module SparkApi
  class PrimaryArray < Array
    
    def primary
      find_primary
    end

    private 
    
    # This is a very simplistic but reliable implementation.
    def find_primary
      self.each do |arg|
        if arg.primary?
          return arg
        end
      end
      nil
    end
  end
  
  #=== Primary: interface to implement for elements that are added to a "PrimaryArray" collection
  module Primary
    # Return true if the element is the primary resource in a collection.
    # Default implementation looks for a "Primary" attribute
    def primary?
      @attributes.key?("Primary") && self.Primary == true
    end
  end
end

Version data entries

73 entries across 73 versions & 1 rubygems

Version Path
spark_api-1.6.3 lib/spark_api/primary_array.rb
spark_api-1.6.2 lib/spark_api/primary_array.rb
spark_api-1.6.1 lib/spark_api/primary_array.rb
spark_api-1.5.7 lib/spark_api/primary_array.rb
spark_api-1.6.0 lib/spark_api/primary_array.rb
spark_api-1.5.6 lib/spark_api/primary_array.rb
spark_api-1.5.5 lib/spark_api/primary_array.rb
spark_api-1.5.4 lib/spark_api/primary_array.rb
spark_api-1.5.3 lib/spark_api/primary_array.rb
spark_api-1.5.2 lib/spark_api/primary_array.rb
spark_api-1.5.1 lib/spark_api/primary_array.rb
spark_api-1.5.0 lib/spark_api/primary_array.rb
spark_api-1.4.34 lib/spark_api/primary_array.rb
spark_api-1.4.32 lib/spark_api/primary_array.rb
spark_api-1.4.31 lib/spark_api/primary_array.rb
spark_api-1.4.29 lib/spark_api/primary_array.rb
spark_api-1.4.28 lib/spark_api/primary_array.rb
spark_api-1.4.27 lib/spark_api/primary_array.rb
spark_api-1.4.26 lib/spark_api/primary_array.rb
spark_api-1.4.25 lib/spark_api/primary_array.rb