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

pulibrary / tigerdata-app / 93cce249-3dee-4f64-bd68-4e50b5cbf48e

21 Oct 2025 09:49PM UTC coverage: 82.779% (+1.5%) from 81.319%
93cce249-3dee-4f64-bd68-4e50b5cbf48e

push

circleci

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

Ref #2065

2490 of 3008 relevant lines covered (82.78%)

226.2 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)
1✔
19
      @path = path
1✔
20
      @id = id
1✔
21
    end
22

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

29
    def metadata
2✔
30
      @metadata ||= begin
1✔
31
                      xml = response_xml
1✔
32
                      node = xml.xpath("/response/reply/result/namespace")
1✔
33
                      {
34
                        id: node.xpath("@id").text,
1✔
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|
2✔
51
          xml.args do
2✔
52
            xml.id id if id.present?
2✔
53
            xml.namespace path if path.present?
2✔
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