Sha256: 74b638be2f64876e84a70c70bcd78867e68ca1820c04c44befbe9f591e0a8caf

Contents?: true

Size: 938 Bytes

Versions: 2

Compression:

Stored size: 938 Bytes

Contents

# frozen_string_literal: true

require_relative './representer/product_group'

module ONEAccess
  module DataObject
    class ProductGroup
      extend Serializable

      represented_by Representer::ProductGroup

      attr_accessor :id
      attr_accessor :name
      attr_accessor :description
      attr_accessor :status
      attr_accessor :contributor_org_id
      attr_accessor :type
      attr_accessor :is_default

      alias is_default? is_default
      alias default? is_default

      def active?
        status == ProductGroupStatus::ACTIVE
      end

      def inactive?
        status == ProductGroupStatus::INACTIVE
      end

      def research?
        type == ProductType::RESEARCH
      end

      def private_events?
        type == ProductType::PRIVATE_EVENT
      end

      def events?
        type == ProductType::EVENT
      end

      def models?
        type == ProductType::MODEL
      end
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
oneaccess-1.3.1 lib/oneaccess/data_object/product_group.rb
oneaccess-1.3.0 lib/oneaccess/data_object/product_group.rb