Sha256: 1c09fd8299c3ff5e65c758b77309ec31f7d9b084f7b23b1a4ef01d8486178988
Contents?: true
Size: 1.99 KB
Versions: 75
Compression:
Stored size: 1.99 KB
Contents
# encoding: UTF-8 # # Copyright (c) 2010-2017 GoodData Corporation. All rights reserved. # This source code is licensed under the BSD-style license found in the # LICENSE file in the root directory of this source tree. require_relative '../metadata' module GoodData class Dataset < MdObject class << self # Method intended to get all objects of that type in a specified project # # @param options [Hash] the options hash # @option options [Boolean] :full if passed true the subclass can decide # to pull in full objects. This is desirable from the usability POV # but unfortunately has negative impact on performance so it is # not the default. # @return [Array<GoodData::MdObject> | Array<Hash>] Return the appropriate metadata objects or their representation def all(options = { :client => GoodData.connection, :project => GoodData.project }) query('dataSet', Dataset, options) end end # Gives you list of attributes on a dataset # # @return [Array<GoodData::Attribute>] def attributes attribute_uris.pmap { |a_uri| project.attributes(a_uri) } end # Gives you list of attribute uris on a dataset # # @return [Array<String>] def attribute_uris content['attributes'] end # Gives you list of facts on a dataset # # @return [Array<GoodData::Fact>] def facts fact_uris.pmap { |a_uri| project.facts(a_uri) } end # Gives you list of fact uris on a dataset # # @return [Array<String>] def fact_uris content['facts'] end # Tells you if a dataset is a date dimension. This is done by looking at # the attributes and inspecting their identifiers. # # @return [Boolean] def date_dimension? content['urn'] && !content['urn'].empty? && fact_uris.empty? end # Delete the data in a dataset def synchronize project.execute_maql("SYNCHRONIZE {#{identifier}}") end alias_method :delete_data, :synchronize end end
Version data entries
75 entries across 75 versions & 1 rubygems