Module: Metanorma::Plugin::Lutaml::ExpressRemarkAdapter

Defined in:
lib/metanorma/plugin/lutaml/express_remark_adapter.rb

Defined Under Namespace

Classes: Base, CachedRepoAdapter, ModelAdapter, NullAdapter, RepoAdapter

Class Method Summary collapse

Class Method Details

.for(model) ⇒ Object



22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/metanorma/plugin/lutaml/express_remark_adapter.rb', line 22

def self.for(model)
  case model
  when Expressir::Model::Cache
    CachedRepoAdapter.new(model)
  when Expressir::Model::Repository, Expressir::Model::ExpFile
    RepoAdapter.new(model)
  when Expressir::Model::ModelElement
    ModelAdapter.new(model)
  else
    NullAdapter.new(model)
  end
end

.relative_path_prefix(options, model) ⇒ Object



9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/metanorma/plugin/lutaml/express_remark_adapter.rb', line 9

def self.relative_path_prefix(options, model)
  return if options.nil? || options["document"].nil?

  document = options["document"]
  file_path = File.dirname(model.file)
  docfile_directory = File.dirname(
    document.attributes["docfile"] || ".",
  )
  resolved = document.path_resolver
    .system_path(file_path, docfile_directory)
  File.expand_path(resolved, docfile_directory)
end