• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

pulibrary / tigerdata-app / 8c95c6ad-3f28-4fba-9871-b842d6fff681

21 Oct 2025 09:49PM UTC coverage: 86.56% (-0.3%) from 86.877%
8c95c6ad-3f28-4fba-9871-b842d6fff681

push

circleci

web-flow
Stop mediaflux when we stop everything else (#2066)

Ref #2065

2602 of 3006 relevant lines covered (86.56%)

265.46 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

95.45
/app/models/mediaflux/namespace_describe_request.rb
1
# frozen_string_literal: true
2
module Mediaflux
2✔
3
  # Describes a namespace
4
  # @example
5
  #   namespace = Mediaflux::NamespaceDescribeRequest.new(session_token: session_id).metadata
6
  #   => {:id=>"1", :path=>"/", :name=>"", :description=>"", :store=>"data"}
7
  # @example
8
  #   namespace = Mediaflux::NamespaceDescribeRequest.new(session_token: session_id, path: "/td-test-001/tigerdataNS").metadata
9
  #   => {:id=>"1182", :path=>"/td-test-001/tigerdataNS", :name=>"tigerdataNS", :description=>"TigerData client app root namespace", :store=>"db"}
10
  class NamespaceDescribeRequest < Request
2✔
11
    attr_reader :path, :id
2✔
12

13
    # Constructor
14
    # @param session_token [String] the API token for the authenticated session
15
    # @param path [String] path of the asset to be described
16
    # @param id [Integer] TODO: Define what this is and how to use it.
17
    def initialize(session_token:, path: nil, id: nil)
2✔
18
      super(session_token: session_token)
2✔
19
      @path = path
2✔
20
      @id = id
2✔
21
    end
22

23
    # Specifies the Mediaflux service to use
24
    # @return [String]
25
    def self.service
2✔
26
      "asset.namespace.describe"
4✔
27
    end
28

29
    def metadata
2✔
30
      @metadata ||= begin
2✔
31
                      xml = response_xml
2✔
32
                      node = xml.xpath("/response/reply/result/namespace")
2✔
33
                      {
34
                        id: node.xpath("@id").text,
2✔
35
                        path: node.xpath("./path").text,
36
                        name: node.xpath("./name").text,
37
                        description: node.xpath("./description").text,
38
                        store: node.xpath("./store").text
39
                      }
40
                    end
41
    end
42

43
    def exists?
2✔
44
      metadata[:id].present?
×
45
    end
46

47
    private
2✔
48

49
      def build_http_request_body(name:)
2✔
50
        super do |xml|
4✔
51
          xml.args do
4✔
52
            xml.id id if id.present?
4✔
53
            xml.namespace path if path.present?
4✔
54
          end
55
        end
56
      end
57
  end
58
end
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc