Sha256: 6beb29a5d5b7cc59d50c84d60ae6dc56bc638986c25701f7bcc433a4a5173c0e

Contents?: true

Size: 818 Bytes

Versions: 10

Compression:

Stored size: 818 Bytes

Contents

# frozen_string_literal: true

module Bridgetown
  module Model
    # Abstract Superclass
    class Origin
      extend ActiveSupport::DescendantsTracker

      # @return [String]
      attr_accessor :id

      # Override in subclass
      def self.handle_scheme?(_scheme)
        false
      end

      def initialize(id)
        self.id = id
      end

      def read
        raise "Implement #read in a subclass of Bridgetown::Model::Origin"
      end

      # @return [Pathname]
      def relative_path
        raise "Implement #relative_path in a subclass of Bridgetown::Model::Origin"
      end

      def exists?
        raise "Implement #exists? in a subclass of Bridgetown::Model::Origin"
      end
    end
  end
end

require "bridgetown-core/model/builder_origin"
require "bridgetown-core/model/repo_origin"

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
bridgetown-core-0.21.5 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.4 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.3 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.2 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.1 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.0 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.0.beta4 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.0.beta3 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.0.beta2 lib/bridgetown-core/model/origin.rb
bridgetown-core-0.21.0.beta1 lib/bridgetown-core/model/origin.rb