Class: OCI8::Metadata::Schema

Inherits:
Base show all
Defined in:
lib/oci8/metadata.rb

Overview

Metadata for a schema.

This is returned by:

  • OCI8#describe_schema(schema_name)

  • OCI8::Metadata::Database#schemas

Instance Method Summary collapse

Methods inherited from Base

#obj_id, #obj_name, #obj_schema, #timestamp

Instance Method Details

#all_objectsObject

array of objects in the schema. This includes unusable objects.



1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
# File 'lib/oci8/metadata.rb', line 1717

def all_objects
  unless @all_objects
    begin
      objs = list_objects
    rescue OCIError => exc
      if exc.code != -1
        raise
      end
      # describe again.
      objs = __con.describe_schema(obj_schema).list_objects
    end
    @all_objects = objs.to_a
  end
  @all_objects
end

#inspectObject

:nodoc:



1755
1756
1757
# File 'lib/oci8/metadata.rb', line 1755

def inspect # :nodoc:
  "#<#{self.class.name}:(#{obj_id}) #{obj_schema}>"
end

#objectsObject

array of objects in the schema.



1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
# File 'lib/oci8/metadata.rb', line 1734

def objects
  unless @objects
    @objects = all_objects.dup.reject! do |obj|
      case obj
      when Unknown
        true
      when Synonym
        begin
          obj.objid
          false
        rescue OCIError
          true
        end
      else
        false
      end
    end
  end
  @objects
end