Class: Google::Cloud::Dataplex::V1::MetadataJob::ImportJobSpec

Inherits:
Object
  • Object
show all
Extended by:
Protobuf::MessageExts::ClassMethods
Includes:
Protobuf::MessageExts
Defined in:
proto_docs/google/cloud/dataplex/v1/catalog.rb

Overview

Job specification for a metadata import job.

You can run the following kinds of metadata import jobs:

  • Full sync of entries with incremental import of their aspects. Supported for custom entries.
  • Incremental import of aspects only. Supported for aspects that belong to custom entries and system entries. For custom entries, you can modify both optional aspects and required aspects. For system entries, you can modify optional aspects.

Defined Under Namespace

Modules: LogLevel, SyncMode Classes: ImportJobScope

Instance Attribute Summary collapse

Instance Attribute Details

#aspect_sync_mode::Google::Cloud::Dataplex::V1::MetadataJob::ImportJobSpec::SyncMode

Returns Required. The sync mode for aspects.

Returns:



1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
# File 'proto_docs/google/cloud/dataplex/v1/catalog.rb', line 1569

class ImportJobSpec
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A boundary on the scope of impact that the metadata import job can have.
  # @!attribute [rw] entry_groups
  #   @return [::Array<::String>]
  #     Required. The entry groups that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryGroups/{entry_group_id}`.
  #     Only entries and aspects that belong to the specified entry groups are
  #     affected by the job.
  #
  #     The entry groups and the job must be in the same location.
  # @!attribute [rw] entry_types
  #   @return [::Array<::String>]
  #     Required. The entry types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryTypes/{entry_type_id}`.
  #     The job modifies only the entries and aspects that belong to these
  #     entry types.
  #
  #     If the metadata import file attempts to modify an entry whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an entry type must either match the location of the
  #     job, or the entry type must be global.
  # @!attribute [rw] aspect_types
  #   @return [::Array<::String>]
  #     Optional. The aspect types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/aspectTypes/{aspect_type_id}`.
  #     The job modifies only the aspects that belong to these aspect types.
  #
  #     This field is required when creating an aspect-only import job.
  #
  #     If the metadata import file attempts to modify an aspect whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an aspect type must either match the location of the
  #     job, or the aspect type must be global.
  # @!attribute [rw] glossaries
  #   @return [::Array<::String>]
  #     Optional. The glossaries that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/glossaries/{glossary_id}`.
  #
  #     While importing Business Glossary entries, the user must
  #     provide glossaries. While importing entries, the user does not have to
  #     provide glossaries. If the metadata import file attempts to modify
  #     Business Glossary entries whose glossary isn't included in this list,
  #     the import job will skip those entries.
  #
  #     The location of a glossary must either match the location of the
  #     job, or the glossary must be global.
  # @!attribute [rw] entry_link_types
  #   @return [::Array<::String>]
  #     Optional. The entry link types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryLinkTypes/{entry_link_type_id}`.
  #     The job modifies only the entryLinks that belong to these entry link
  #     types.
  #
  #     If the metadata import file attempts to create or delete an entry link
  #     whose entry link type isn't included in this list, the import job will
  #     skip those entry links.
  # @!attribute [rw] referenced_entry_scopes
  #   @return [::Array<::String>]
  #     Optional. Defines the scope of entries that can be referenced in the
  #     entry links.
  #
  #     Currently, projects are supported as valid scopes.
  #     Format: `projects/{project_number_or_id}`
  #
  #     If the metadata import file attempts to create an entry link
  #     which references an entry that is not in the scope, the import job will
  #     skip that entry link.
  class ImportJobScope
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Specifies how the entries and aspects in a metadata import job are
  # updated. For more information, see [Sync
  # mode](https://cloud.google.com/dataplex/docs/import-metadata#sync-mode).
  module SyncMode
    # Sync mode unspecified.
    SYNC_MODE_UNSPECIFIED = 0

    # All resources in the job's scope are modified. If a resource exists in
    # Dataplex Universal Catalog but isn't included in the metadata import
    # file, the resource is deleted when you run the metadata job. Use this
    # mode to perform a full sync of the set of entries in the job scope.
    #
    # This sync mode is supported for entries.
    FULL = 1

    # Only the resources that are explicitly included in the
    # metadata import file are modified. Use this mode to modify a subset of
    # resources while leaving unreferenced resources unchanged.
    #
    # This sync mode is supported for aspects.
    INCREMENTAL = 2

    # If entry sync mode is `NONE`, then aspects are modified according
    # to the aspect sync mode. Other metadata that belongs to entries in the
    # job's scope isn't modified.
    #
    # This sync mode is supported for entries.
    NONE = 3
  end

  # The level of logs to write to Cloud Logging for this job.
  module LogLevel
    # Log level unspecified.
    LOG_LEVEL_UNSPECIFIED = 0

    # Debug-level logging. Captures detailed logs for each import item. Use
    # debug-level logging to troubleshoot issues with specific import items.
    # For example, use debug-level logging to identify resources that are
    # missing from the job scope, entries or aspects that don't conform to
    # the associated entry type or aspect type, or other misconfigurations
    # with the metadata import file.
    #
    # Depending on the size of your metadata job and the number of logs that
    # are generated, debug-level logging might incur
    # [additional costs](https://cloud.google.com/stackdriver/pricing).
    DEBUG = 1

    # Info-level logging. Captures logs at the overall job level. Includes
    # aggregate logs about import items, but doesn't specify which import
    # item has an error.
    INFO = 2
  end
end

#entry_sync_mode::Google::Cloud::Dataplex::V1::MetadataJob::ImportJobSpec::SyncMode

Returns Required. The sync mode for entries.

Returns:



1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
# File 'proto_docs/google/cloud/dataplex/v1/catalog.rb', line 1569

class ImportJobSpec
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A boundary on the scope of impact that the metadata import job can have.
  # @!attribute [rw] entry_groups
  #   @return [::Array<::String>]
  #     Required. The entry groups that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryGroups/{entry_group_id}`.
  #     Only entries and aspects that belong to the specified entry groups are
  #     affected by the job.
  #
  #     The entry groups and the job must be in the same location.
  # @!attribute [rw] entry_types
  #   @return [::Array<::String>]
  #     Required. The entry types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryTypes/{entry_type_id}`.
  #     The job modifies only the entries and aspects that belong to these
  #     entry types.
  #
  #     If the metadata import file attempts to modify an entry whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an entry type must either match the location of the
  #     job, or the entry type must be global.
  # @!attribute [rw] aspect_types
  #   @return [::Array<::String>]
  #     Optional. The aspect types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/aspectTypes/{aspect_type_id}`.
  #     The job modifies only the aspects that belong to these aspect types.
  #
  #     This field is required when creating an aspect-only import job.
  #
  #     If the metadata import file attempts to modify an aspect whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an aspect type must either match the location of the
  #     job, or the aspect type must be global.
  # @!attribute [rw] glossaries
  #   @return [::Array<::String>]
  #     Optional. The glossaries that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/glossaries/{glossary_id}`.
  #
  #     While importing Business Glossary entries, the user must
  #     provide glossaries. While importing entries, the user does not have to
  #     provide glossaries. If the metadata import file attempts to modify
  #     Business Glossary entries whose glossary isn't included in this list,
  #     the import job will skip those entries.
  #
  #     The location of a glossary must either match the location of the
  #     job, or the glossary must be global.
  # @!attribute [rw] entry_link_types
  #   @return [::Array<::String>]
  #     Optional. The entry link types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryLinkTypes/{entry_link_type_id}`.
  #     The job modifies only the entryLinks that belong to these entry link
  #     types.
  #
  #     If the metadata import file attempts to create or delete an entry link
  #     whose entry link type isn't included in this list, the import job will
  #     skip those entry links.
  # @!attribute [rw] referenced_entry_scopes
  #   @return [::Array<::String>]
  #     Optional. Defines the scope of entries that can be referenced in the
  #     entry links.
  #
  #     Currently, projects are supported as valid scopes.
  #     Format: `projects/{project_number_or_id}`
  #
  #     If the metadata import file attempts to create an entry link
  #     which references an entry that is not in the scope, the import job will
  #     skip that entry link.
  class ImportJobScope
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Specifies how the entries and aspects in a metadata import job are
  # updated. For more information, see [Sync
  # mode](https://cloud.google.com/dataplex/docs/import-metadata#sync-mode).
  module SyncMode
    # Sync mode unspecified.
    SYNC_MODE_UNSPECIFIED = 0

    # All resources in the job's scope are modified. If a resource exists in
    # Dataplex Universal Catalog but isn't included in the metadata import
    # file, the resource is deleted when you run the metadata job. Use this
    # mode to perform a full sync of the set of entries in the job scope.
    #
    # This sync mode is supported for entries.
    FULL = 1

    # Only the resources that are explicitly included in the
    # metadata import file are modified. Use this mode to modify a subset of
    # resources while leaving unreferenced resources unchanged.
    #
    # This sync mode is supported for aspects.
    INCREMENTAL = 2

    # If entry sync mode is `NONE`, then aspects are modified according
    # to the aspect sync mode. Other metadata that belongs to entries in the
    # job's scope isn't modified.
    #
    # This sync mode is supported for entries.
    NONE = 3
  end

  # The level of logs to write to Cloud Logging for this job.
  module LogLevel
    # Log level unspecified.
    LOG_LEVEL_UNSPECIFIED = 0

    # Debug-level logging. Captures detailed logs for each import item. Use
    # debug-level logging to troubleshoot issues with specific import items.
    # For example, use debug-level logging to identify resources that are
    # missing from the job scope, entries or aspects that don't conform to
    # the associated entry type or aspect type, or other misconfigurations
    # with the metadata import file.
    #
    # Depending on the size of your metadata job and the number of logs that
    # are generated, debug-level logging might incur
    # [additional costs](https://cloud.google.com/stackdriver/pricing).
    DEBUG = 1

    # Info-level logging. Captures logs at the overall job level. Includes
    # aggregate logs about import items, but doesn't specify which import
    # item has an error.
    INFO = 2
  end
end

#log_level::Google::Cloud::Dataplex::V1::MetadataJob::ImportJobSpec::LogLevel

Returns Optional. The level of logs to write to Cloud Logging for this job.

Debug-level logs provide highly-detailed information for troubleshooting, but their increased verbosity could incur additional costs that might not be merited for all jobs.

If unspecified, defaults to INFO.

Returns:



1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
# File 'proto_docs/google/cloud/dataplex/v1/catalog.rb', line 1569

class ImportJobSpec
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A boundary on the scope of impact that the metadata import job can have.
  # @!attribute [rw] entry_groups
  #   @return [::Array<::String>]
  #     Required. The entry groups that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryGroups/{entry_group_id}`.
  #     Only entries and aspects that belong to the specified entry groups are
  #     affected by the job.
  #
  #     The entry groups and the job must be in the same location.
  # @!attribute [rw] entry_types
  #   @return [::Array<::String>]
  #     Required. The entry types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryTypes/{entry_type_id}`.
  #     The job modifies only the entries and aspects that belong to these
  #     entry types.
  #
  #     If the metadata import file attempts to modify an entry whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an entry type must either match the location of the
  #     job, or the entry type must be global.
  # @!attribute [rw] aspect_types
  #   @return [::Array<::String>]
  #     Optional. The aspect types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/aspectTypes/{aspect_type_id}`.
  #     The job modifies only the aspects that belong to these aspect types.
  #
  #     This field is required when creating an aspect-only import job.
  #
  #     If the metadata import file attempts to modify an aspect whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an aspect type must either match the location of the
  #     job, or the aspect type must be global.
  # @!attribute [rw] glossaries
  #   @return [::Array<::String>]
  #     Optional. The glossaries that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/glossaries/{glossary_id}`.
  #
  #     While importing Business Glossary entries, the user must
  #     provide glossaries. While importing entries, the user does not have to
  #     provide glossaries. If the metadata import file attempts to modify
  #     Business Glossary entries whose glossary isn't included in this list,
  #     the import job will skip those entries.
  #
  #     The location of a glossary must either match the location of the
  #     job, or the glossary must be global.
  # @!attribute [rw] entry_link_types
  #   @return [::Array<::String>]
  #     Optional. The entry link types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryLinkTypes/{entry_link_type_id}`.
  #     The job modifies only the entryLinks that belong to these entry link
  #     types.
  #
  #     If the metadata import file attempts to create or delete an entry link
  #     whose entry link type isn't included in this list, the import job will
  #     skip those entry links.
  # @!attribute [rw] referenced_entry_scopes
  #   @return [::Array<::String>]
  #     Optional. Defines the scope of entries that can be referenced in the
  #     entry links.
  #
  #     Currently, projects are supported as valid scopes.
  #     Format: `projects/{project_number_or_id}`
  #
  #     If the metadata import file attempts to create an entry link
  #     which references an entry that is not in the scope, the import job will
  #     skip that entry link.
  class ImportJobScope
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Specifies how the entries and aspects in a metadata import job are
  # updated. For more information, see [Sync
  # mode](https://cloud.google.com/dataplex/docs/import-metadata#sync-mode).
  module SyncMode
    # Sync mode unspecified.
    SYNC_MODE_UNSPECIFIED = 0

    # All resources in the job's scope are modified. If a resource exists in
    # Dataplex Universal Catalog but isn't included in the metadata import
    # file, the resource is deleted when you run the metadata job. Use this
    # mode to perform a full sync of the set of entries in the job scope.
    #
    # This sync mode is supported for entries.
    FULL = 1

    # Only the resources that are explicitly included in the
    # metadata import file are modified. Use this mode to modify a subset of
    # resources while leaving unreferenced resources unchanged.
    #
    # This sync mode is supported for aspects.
    INCREMENTAL = 2

    # If entry sync mode is `NONE`, then aspects are modified according
    # to the aspect sync mode. Other metadata that belongs to entries in the
    # job's scope isn't modified.
    #
    # This sync mode is supported for entries.
    NONE = 3
  end

  # The level of logs to write to Cloud Logging for this job.
  module LogLevel
    # Log level unspecified.
    LOG_LEVEL_UNSPECIFIED = 0

    # Debug-level logging. Captures detailed logs for each import item. Use
    # debug-level logging to troubleshoot issues with specific import items.
    # For example, use debug-level logging to identify resources that are
    # missing from the job scope, entries or aspects that don't conform to
    # the associated entry type or aspect type, or other misconfigurations
    # with the metadata import file.
    #
    # Depending on the size of your metadata job and the number of logs that
    # are generated, debug-level logging might incur
    # [additional costs](https://cloud.google.com/stackdriver/pricing).
    DEBUG = 1

    # Info-level logging. Captures logs at the overall job level. Includes
    # aggregate logs about import items, but doesn't specify which import
    # item has an error.
    INFO = 2
  end
end

#scope::Google::Cloud::Dataplex::V1::MetadataJob::ImportJobSpec::ImportJobScope

Returns Required. A boundary on the scope of impact that the metadata import job can have.

Returns:



1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
# File 'proto_docs/google/cloud/dataplex/v1/catalog.rb', line 1569

class ImportJobSpec
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A boundary on the scope of impact that the metadata import job can have.
  # @!attribute [rw] entry_groups
  #   @return [::Array<::String>]
  #     Required. The entry groups that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryGroups/{entry_group_id}`.
  #     Only entries and aspects that belong to the specified entry groups are
  #     affected by the job.
  #
  #     The entry groups and the job must be in the same location.
  # @!attribute [rw] entry_types
  #   @return [::Array<::String>]
  #     Required. The entry types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryTypes/{entry_type_id}`.
  #     The job modifies only the entries and aspects that belong to these
  #     entry types.
  #
  #     If the metadata import file attempts to modify an entry whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an entry type must either match the location of the
  #     job, or the entry type must be global.
  # @!attribute [rw] aspect_types
  #   @return [::Array<::String>]
  #     Optional. The aspect types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/aspectTypes/{aspect_type_id}`.
  #     The job modifies only the aspects that belong to these aspect types.
  #
  #     This field is required when creating an aspect-only import job.
  #
  #     If the metadata import file attempts to modify an aspect whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an aspect type must either match the location of the
  #     job, or the aspect type must be global.
  # @!attribute [rw] glossaries
  #   @return [::Array<::String>]
  #     Optional. The glossaries that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/glossaries/{glossary_id}`.
  #
  #     While importing Business Glossary entries, the user must
  #     provide glossaries. While importing entries, the user does not have to
  #     provide glossaries. If the metadata import file attempts to modify
  #     Business Glossary entries whose glossary isn't included in this list,
  #     the import job will skip those entries.
  #
  #     The location of a glossary must either match the location of the
  #     job, or the glossary must be global.
  # @!attribute [rw] entry_link_types
  #   @return [::Array<::String>]
  #     Optional. The entry link types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryLinkTypes/{entry_link_type_id}`.
  #     The job modifies only the entryLinks that belong to these entry link
  #     types.
  #
  #     If the metadata import file attempts to create or delete an entry link
  #     whose entry link type isn't included in this list, the import job will
  #     skip those entry links.
  # @!attribute [rw] referenced_entry_scopes
  #   @return [::Array<::String>]
  #     Optional. Defines the scope of entries that can be referenced in the
  #     entry links.
  #
  #     Currently, projects are supported as valid scopes.
  #     Format: `projects/{project_number_or_id}`
  #
  #     If the metadata import file attempts to create an entry link
  #     which references an entry that is not in the scope, the import job will
  #     skip that entry link.
  class ImportJobScope
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Specifies how the entries and aspects in a metadata import job are
  # updated. For more information, see [Sync
  # mode](https://cloud.google.com/dataplex/docs/import-metadata#sync-mode).
  module SyncMode
    # Sync mode unspecified.
    SYNC_MODE_UNSPECIFIED = 0

    # All resources in the job's scope are modified. If a resource exists in
    # Dataplex Universal Catalog but isn't included in the metadata import
    # file, the resource is deleted when you run the metadata job. Use this
    # mode to perform a full sync of the set of entries in the job scope.
    #
    # This sync mode is supported for entries.
    FULL = 1

    # Only the resources that are explicitly included in the
    # metadata import file are modified. Use this mode to modify a subset of
    # resources while leaving unreferenced resources unchanged.
    #
    # This sync mode is supported for aspects.
    INCREMENTAL = 2

    # If entry sync mode is `NONE`, then aspects are modified according
    # to the aspect sync mode. Other metadata that belongs to entries in the
    # job's scope isn't modified.
    #
    # This sync mode is supported for entries.
    NONE = 3
  end

  # The level of logs to write to Cloud Logging for this job.
  module LogLevel
    # Log level unspecified.
    LOG_LEVEL_UNSPECIFIED = 0

    # Debug-level logging. Captures detailed logs for each import item. Use
    # debug-level logging to troubleshoot issues with specific import items.
    # For example, use debug-level logging to identify resources that are
    # missing from the job scope, entries or aspects that don't conform to
    # the associated entry type or aspect type, or other misconfigurations
    # with the metadata import file.
    #
    # Depending on the size of your metadata job and the number of logs that
    # are generated, debug-level logging might incur
    # [additional costs](https://cloud.google.com/stackdriver/pricing).
    DEBUG = 1

    # Info-level logging. Captures logs at the overall job level. Includes
    # aggregate logs about import items, but doesn't specify which import
    # item has an error.
    INFO = 2
  end
end

#source_create_time::Google::Protobuf::Timestamp

Returns Optional. The time when the process that created the metadata import files began.

Returns:



1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
# File 'proto_docs/google/cloud/dataplex/v1/catalog.rb', line 1569

class ImportJobSpec
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A boundary on the scope of impact that the metadata import job can have.
  # @!attribute [rw] entry_groups
  #   @return [::Array<::String>]
  #     Required. The entry groups that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryGroups/{entry_group_id}`.
  #     Only entries and aspects that belong to the specified entry groups are
  #     affected by the job.
  #
  #     The entry groups and the job must be in the same location.
  # @!attribute [rw] entry_types
  #   @return [::Array<::String>]
  #     Required. The entry types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryTypes/{entry_type_id}`.
  #     The job modifies only the entries and aspects that belong to these
  #     entry types.
  #
  #     If the metadata import file attempts to modify an entry whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an entry type must either match the location of the
  #     job, or the entry type must be global.
  # @!attribute [rw] aspect_types
  #   @return [::Array<::String>]
  #     Optional. The aspect types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/aspectTypes/{aspect_type_id}`.
  #     The job modifies only the aspects that belong to these aspect types.
  #
  #     This field is required when creating an aspect-only import job.
  #
  #     If the metadata import file attempts to modify an aspect whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an aspect type must either match the location of the
  #     job, or the aspect type must be global.
  # @!attribute [rw] glossaries
  #   @return [::Array<::String>]
  #     Optional. The glossaries that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/glossaries/{glossary_id}`.
  #
  #     While importing Business Glossary entries, the user must
  #     provide glossaries. While importing entries, the user does not have to
  #     provide glossaries. If the metadata import file attempts to modify
  #     Business Glossary entries whose glossary isn't included in this list,
  #     the import job will skip those entries.
  #
  #     The location of a glossary must either match the location of the
  #     job, or the glossary must be global.
  # @!attribute [rw] entry_link_types
  #   @return [::Array<::String>]
  #     Optional. The entry link types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryLinkTypes/{entry_link_type_id}`.
  #     The job modifies only the entryLinks that belong to these entry link
  #     types.
  #
  #     If the metadata import file attempts to create or delete an entry link
  #     whose entry link type isn't included in this list, the import job will
  #     skip those entry links.
  # @!attribute [rw] referenced_entry_scopes
  #   @return [::Array<::String>]
  #     Optional. Defines the scope of entries that can be referenced in the
  #     entry links.
  #
  #     Currently, projects are supported as valid scopes.
  #     Format: `projects/{project_number_or_id}`
  #
  #     If the metadata import file attempts to create an entry link
  #     which references an entry that is not in the scope, the import job will
  #     skip that entry link.
  class ImportJobScope
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Specifies how the entries and aspects in a metadata import job are
  # updated. For more information, see [Sync
  # mode](https://cloud.google.com/dataplex/docs/import-metadata#sync-mode).
  module SyncMode
    # Sync mode unspecified.
    SYNC_MODE_UNSPECIFIED = 0

    # All resources in the job's scope are modified. If a resource exists in
    # Dataplex Universal Catalog but isn't included in the metadata import
    # file, the resource is deleted when you run the metadata job. Use this
    # mode to perform a full sync of the set of entries in the job scope.
    #
    # This sync mode is supported for entries.
    FULL = 1

    # Only the resources that are explicitly included in the
    # metadata import file are modified. Use this mode to modify a subset of
    # resources while leaving unreferenced resources unchanged.
    #
    # This sync mode is supported for aspects.
    INCREMENTAL = 2

    # If entry sync mode is `NONE`, then aspects are modified according
    # to the aspect sync mode. Other metadata that belongs to entries in the
    # job's scope isn't modified.
    #
    # This sync mode is supported for entries.
    NONE = 3
  end

  # The level of logs to write to Cloud Logging for this job.
  module LogLevel
    # Log level unspecified.
    LOG_LEVEL_UNSPECIFIED = 0

    # Debug-level logging. Captures detailed logs for each import item. Use
    # debug-level logging to troubleshoot issues with specific import items.
    # For example, use debug-level logging to identify resources that are
    # missing from the job scope, entries or aspects that don't conform to
    # the associated entry type or aspect type, or other misconfigurations
    # with the metadata import file.
    #
    # Depending on the size of your metadata job and the number of logs that
    # are generated, debug-level logging might incur
    # [additional costs](https://cloud.google.com/stackdriver/pricing).
    DEBUG = 1

    # Info-level logging. Captures logs at the overall job level. Includes
    # aggregate logs about import items, but doesn't specify which import
    # item has an error.
    INFO = 2
  end
end

#source_storage_uri::String

Returns Optional. The URI of a Cloud Storage bucket or folder (beginning with gs:// and ending with /) that contains the metadata import files for this job.

A metadata import file defines the values to set for each of the entries and aspects in a metadata import job. For more information about how to create a metadata import file and the file requirements, see Metadata import file.

You can provide multiple metadata import files in the same metadata job. The bucket or folder must contain at least one metadata import file, in JSON Lines format (either .json or .jsonl file extension).

In FULL entry sync mode, don't save the metadata import file in a folder named SOURCE_STORAGE_URI/deletions/.

Caution: If the metadata import file contains no data, all entries and aspects that belong to the job's scope are deleted.

Returns:

  • (::String)

    Optional. The URI of a Cloud Storage bucket or folder (beginning with gs:// and ending with /) that contains the metadata import files for this job.

    A metadata import file defines the values to set for each of the entries and aspects in a metadata import job. For more information about how to create a metadata import file and the file requirements, see Metadata import file.

    You can provide multiple metadata import files in the same metadata job. The bucket or folder must contain at least one metadata import file, in JSON Lines format (either .json or .jsonl file extension).

    In FULL entry sync mode, don't save the metadata import file in a folder named SOURCE_STORAGE_URI/deletions/.

    Caution: If the metadata import file contains no data, all entries and aspects that belong to the job's scope are deleted.



1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
# File 'proto_docs/google/cloud/dataplex/v1/catalog.rb', line 1569

class ImportJobSpec
  include ::Google::Protobuf::MessageExts
  extend ::Google::Protobuf::MessageExts::ClassMethods

  # A boundary on the scope of impact that the metadata import job can have.
  # @!attribute [rw] entry_groups
  #   @return [::Array<::String>]
  #     Required. The entry groups that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryGroups/{entry_group_id}`.
  #     Only entries and aspects that belong to the specified entry groups are
  #     affected by the job.
  #
  #     The entry groups and the job must be in the same location.
  # @!attribute [rw] entry_types
  #   @return [::Array<::String>]
  #     Required. The entry types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryTypes/{entry_type_id}`.
  #     The job modifies only the entries and aspects that belong to these
  #     entry types.
  #
  #     If the metadata import file attempts to modify an entry whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an entry type must either match the location of the
  #     job, or the entry type must be global.
  # @!attribute [rw] aspect_types
  #   @return [::Array<::String>]
  #     Optional. The aspect types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/aspectTypes/{aspect_type_id}`.
  #     The job modifies only the aspects that belong to these aspect types.
  #
  #     This field is required when creating an aspect-only import job.
  #
  #     If the metadata import file attempts to modify an aspect whose type
  #     isn't included in this list, the import job is halted before modifying
  #     any entries or aspects.
  #
  #     The location of an aspect type must either match the location of the
  #     job, or the aspect type must be global.
  # @!attribute [rw] glossaries
  #   @return [::Array<::String>]
  #     Optional. The glossaries that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/glossaries/{glossary_id}`.
  #
  #     While importing Business Glossary entries, the user must
  #     provide glossaries. While importing entries, the user does not have to
  #     provide glossaries. If the metadata import file attempts to modify
  #     Business Glossary entries whose glossary isn't included in this list,
  #     the import job will skip those entries.
  #
  #     The location of a glossary must either match the location of the
  #     job, or the glossary must be global.
  # @!attribute [rw] entry_link_types
  #   @return [::Array<::String>]
  #     Optional. The entry link types that are in scope for the import job,
  #     specified as relative resource names in the format
  #     `projects/{project_number_or_id}/locations/{location_id}/entryLinkTypes/{entry_link_type_id}`.
  #     The job modifies only the entryLinks that belong to these entry link
  #     types.
  #
  #     If the metadata import file attempts to create or delete an entry link
  #     whose entry link type isn't included in this list, the import job will
  #     skip those entry links.
  # @!attribute [rw] referenced_entry_scopes
  #   @return [::Array<::String>]
  #     Optional. Defines the scope of entries that can be referenced in the
  #     entry links.
  #
  #     Currently, projects are supported as valid scopes.
  #     Format: `projects/{project_number_or_id}`
  #
  #     If the metadata import file attempts to create an entry link
  #     which references an entry that is not in the scope, the import job will
  #     skip that entry link.
  class ImportJobScope
    include ::Google::Protobuf::MessageExts
    extend ::Google::Protobuf::MessageExts::ClassMethods
  end

  # Specifies how the entries and aspects in a metadata import job are
  # updated. For more information, see [Sync
  # mode](https://cloud.google.com/dataplex/docs/import-metadata#sync-mode).
  module SyncMode
    # Sync mode unspecified.
    SYNC_MODE_UNSPECIFIED = 0

    # All resources in the job's scope are modified. If a resource exists in
    # Dataplex Universal Catalog but isn't included in the metadata import
    # file, the resource is deleted when you run the metadata job. Use this
    # mode to perform a full sync of the set of entries in the job scope.
    #
    # This sync mode is supported for entries.
    FULL = 1

    # Only the resources that are explicitly included in the
    # metadata import file are modified. Use this mode to modify a subset of
    # resources while leaving unreferenced resources unchanged.
    #
    # This sync mode is supported for aspects.
    INCREMENTAL = 2

    # If entry sync mode is `NONE`, then aspects are modified according
    # to the aspect sync mode. Other metadata that belongs to entries in the
    # job's scope isn't modified.
    #
    # This sync mode is supported for entries.
    NONE = 3
  end

  # The level of logs to write to Cloud Logging for this job.
  module LogLevel
    # Log level unspecified.
    LOG_LEVEL_UNSPECIFIED = 0

    # Debug-level logging. Captures detailed logs for each import item. Use
    # debug-level logging to troubleshoot issues with specific import items.
    # For example, use debug-level logging to identify resources that are
    # missing from the job scope, entries or aspects that don't conform to
    # the associated entry type or aspect type, or other misconfigurations
    # with the metadata import file.
    #
    # Depending on the size of your metadata job and the number of logs that
    # are generated, debug-level logging might incur
    # [additional costs](https://cloud.google.com/stackdriver/pricing).
    DEBUG = 1

    # Info-level logging. Captures logs at the overall job level. Includes
    # aggregate logs about import items, but doesn't specify which import
    # item has an error.
    INFO = 2
  end
end