Sha256: 0d73731ee4dc322ab6fb1f89da13632c3ea9938c6fa9b7a7ebd5e7ec0309e03b

Contents?: true

Size: 1.1 KB

Versions: 2

Compression:

Stored size: 1.1 KB

Contents

# frozen_string_literal: true

require 'java'

require 'structurizr_jars'

module Structurizr
  # This namespace provides lower-level Java integration with Structurizr
  module Metal
    Root = ::Java::ComStructurizr
    Model = ::Java::ComStructurizrModel
    View = ::Java::ComStructurizrView
    Client = ::Java::ComStructurizrClient
    Util = ::Java::ComStructurizrUtil
    Documentation = ::Java::ComStructurizrDocumentation

    # We need it due to a behavior in jruby which doesn't bind methods from non-public classes
    # https://github.com/jruby/jruby/issues/6197
    # For now we'll stick to our own patch which manually binds those methods
    class Model::ModelItem
      java_alias :addTags, :addTags, [java.lang.String[]]
      java_alias :add_tags, :addTags, [java.lang.String[]]
      java_alias :getTags, :getTags, []
      java_alias :get_tags, :getTags, []
      java_alias :removeTag, :removeTag, [java.lang.String]
      java_alias :remove_tag, :removeTag, [java.lang.String]
      java_alias :hasTag, :hasTag, [java.lang.String]
      java_alias :has_tag, :hasTag, [java.lang.String]
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
structurizr-1.29.0-java lib/structurizr/metal.rb
structurizr-1.26.1-java lib/structurizr/metal.rb