# Path: google/cloud/clouddms_v1/types/clouddms_resources.py
# class DatabaseEngine(proto.Enum):
# class DatabaseProvider(proto.Enum):
# class SslConfig(proto.Message):
#     class SslType(proto.Enum):
# class MySqlConnectionProfile(proto.Message):
# class PostgreSqlConnectionProfile(proto.Message):
# class CloudSqlConnectionProfile(proto.Message):
# class SqlAclEntry(proto.Message):
# class SqlIpConfig(proto.Message):
# class CloudSqlSettings(proto.Message):
#     class SqlActivationPolicy(proto.Enum):
#     class SqlDataDiskType(proto.Enum):
#     class SqlDatabaseVersion(proto.Enum):
# class StaticIpConnectivity(proto.Message):
# class ReverseSshConnectivity(proto.Message):
# class VpcPeeringConnectivity(proto.Message):
# class DatabaseType(proto.Message):
# class MigrationJob(proto.Message):
#     class State(proto.Enum):
#     class Phase(proto.Enum):
#     class Type(proto.Enum):
# class ConnectionProfile(proto.Message):
#     class State(proto.Enum):
# class MigrationJobVerificationError(proto.Message):
#     class ErrorCode(proto.Enum):
#     DATABASE_ENGINE_UNSPECIFIED = 0
#     MYSQL = 1
#     POSTGRESQL = 2
#     DATABASE_PROVIDER_UNSPECIFIED = 0
#     CLOUDSQL = 1
#     RDS = 2
#         SSL_TYPE_UNSPECIFIED = 0
#         SERVER_ONLY = 1
#         SERVER_CLIENT = 2
#         SQL_ACTIVATION_POLICY_UNSPECIFIED = 0
#         ALWAYS = 1
#         NEVER = 2
#         SQL_DATA_DISK_TYPE_UNSPECIFIED = 0
#         PD_SSD = 1
#         PD_HDD = 2
#         SQL_DATABASE_VERSION_UNSPECIFIED = 0
#         MYSQL_5_6 = 1
#         MYSQL_5_7 = 2
#         POSTGRES_9_6 = 3
#         POSTGRES_11 = 4
#         POSTGRES_10 = 5
#         MYSQL_8_0 = 6
#         POSTGRES_12 = 7
#         POSTGRES_13 = 8
#         STATE_UNSPECIFIED = 0
#         MAINTENANCE = 1
#         DRAFT = 2
#         CREATING = 3
#         NOT_STARTED = 4
#         RUNNING = 5
#         FAILED = 6
#         COMPLETED = 7
#         DELETING = 8
#         STOPPING = 9
#         STOPPED = 10
#         DELETED = 11
#         UPDATING = 12
#         STARTING = 13
#         RESTARTING = 14
#         RESUMING = 15
#         PHASE_UNSPECIFIED = 0
#         FULL_DUMP = 1
#         CDC = 2
#         PROMOTE_IN_PROGRESS = 3
#         WAITING_FOR_SOURCE_WRITES_TO_STOP = 4
#         PREPARING_THE_DUMP = 5
#         TYPE_UNSPECIFIED = 0
#         ONE_TIME = 1
#         CONTINUOUS = 2
#         STATE_UNSPECIFIED = 0
#         DRAFT = 1
#         CREATING = 2
#         READY = 3
#         UPDATING = 4
#         DELETING = 5
#         DELETED = 6
#         FAILED = 7
#         ERROR_CODE_UNSPECIFIED = 0
#         CONNECTION_FAILURE = 1
#         AUTHENTICATION_FAILURE = 2
#         INVALID_CONNECTION_PROFILE_CONFIG = 3
#         VERSION_INCOMPATIBILITY = 4
#         CONNECTION_PROFILE_TYPES_INCOMPATIBILITY = 5
#         NO_PGLOGICAL_INSTALLED = 7
#         PGLOGICAL_NODE_ALREADY_EXISTS = 8
#         INVALID_WAL_LEVEL = 9
#         INVALID_SHARED_PRELOAD_LIBRARY = 10
#         INSUFFICIENT_MAX_REPLICATION_SLOTS = 11
#         INSUFFICIENT_MAX_WAL_SENDERS = 12
#         INSUFFICIENT_MAX_WORKER_PROCESSES = 13
#         UNSUPPORTED_EXTENSIONS = 14
#         UNSUPPORTED_MIGRATION_TYPE = 15
#         INVALID_RDS_LOGICAL_REPLICATION = 16
#         UNSUPPORTED_GTID_MODE = 17
#         UNSUPPORTED_TABLE_DEFINITION = 18
#         UNSUPPORTED_DEFINER = 19
#         CANT_RESTART_RUNNING_MIGRATION = 21


import proto  # type: ignore
from google.cloud.clouddms_v1.types import clouddms_resources
from google.protobuf import field_mask_pb2  # type: ignore
from google.protobuf import timestamp_pb2  # type: ignore
        order_by (str):
            the order by fields for the result.
    """

    parent = proto.Field(proto.STRING, number=1,)
    page_size = proto.Field(proto.INT32, number=2,)
    page_token = proto.Field(proto.STRING, number=3,)
    filter = proto.Field(proto.STRING, number=4,)
    order_by = proto.Field(proto.STRING, number=5,)


class ListConnectionProfilesResponse(proto.Message):
    r"""Response message for 'ListConnectionProfiles' request.

    Attributes:
        connection_profiles (Sequence[google.cloud.clouddms_v1.types.ConnectionProfile]):
            The response list of connection profiles.
        next_page_token (str):
            A token, which can be sent as ``page_token`` to retrieve the
            next page. If this field is omitted, there are no subsequent
            pages.
        unreachable (Sequence[str]):
            Locations that could not be reached.
    """

    @property
    def raw_page(self):
        return self

    connection_profiles = proto.RepeatedField(

# Path: google/cloud/clouddms_v1/types/clouddms_resources.py
# class DatabaseEngine(proto.Enum):
# class DatabaseProvider(proto.Enum):
# class SslConfig(proto.Message):
#     class SslType(proto.Enum):
# class MySqlConnectionProfile(proto.Message):
# class PostgreSqlConnectionProfile(proto.Message):
# class CloudSqlConnectionProfile(proto.Message):
# class SqlAclEntry(proto.Message):
# class SqlIpConfig(proto.Message):
# class CloudSqlSettings(proto.Message):
#     class SqlActivationPolicy(proto.Enum):
#     class SqlDataDiskType(proto.Enum):
#     class SqlDatabaseVersion(proto.Enum):
# class StaticIpConnectivity(proto.Message):
# class ReverseSshConnectivity(proto.Message):
# class VpcPeeringConnectivity(proto.Message):
# class DatabaseType(proto.Message):
# class MigrationJob(proto.Message):
#     class State(proto.Enum):
#     class Phase(proto.Enum):
#     class Type(proto.Enum):
# class ConnectionProfile(proto.Message):
#     class State(proto.Enum):
# class MigrationJobVerificationError(proto.Message):
#     class ErrorCode(proto.Enum):
#     DATABASE_ENGINE_UNSPECIFIED = 0
#     MYSQL = 1
#     POSTGRESQL = 2
#     DATABASE_PROVIDER_UNSPECIFIED = 0
#     CLOUDSQL = 1
#     RDS = 2
#         SSL_TYPE_UNSPECIFIED = 0
#         SERVER_ONLY = 1
#         SERVER_CLIENT = 2
#         SQL_ACTIVATION_POLICY_UNSPECIFIED = 0
#         ALWAYS = 1
#         NEVER = 2
#         SQL_DATA_DISK_TYPE_UNSPECIFIED = 0
#         PD_SSD = 1
#         PD_HDD = 2
#         SQL_DATABASE_VERSION_UNSPECIFIED = 0
#         MYSQL_5_6 = 1
#         MYSQL_5_7 = 2
#         POSTGRES_9_6 = 3
#         POSTGRES_11 = 4
#         POSTGRES_10 = 5
#         MYSQL_8_0 = 6
#         POSTGRES_12 = 7
#         POSTGRES_13 = 8
#         STATE_UNSPECIFIED = 0
#         MAINTENANCE = 1
#         DRAFT = 2
#         CREATING = 3
#         NOT_STARTED = 4
#         RUNNING = 5
#         FAILED = 6
#         COMPLETED = 7
#         DELETING = 8
#         STOPPING = 9
#         STOPPED = 10
#         DELETED = 11
#         UPDATING = 12
#         STARTING = 13
#         RESTARTING = 14
#         RESUMING = 15
#         PHASE_UNSPECIFIED = 0
#         FULL_DUMP = 1
#         CDC = 2
#         PROMOTE_IN_PROGRESS = 3
#         WAITING_FOR_SOURCE_WRITES_TO_STOP = 4
#         PREPARING_THE_DUMP = 5
#         TYPE_UNSPECIFIED = 0
#         ONE_TIME = 1
#         CONTINUOUS = 2
#         STATE_UNSPECIFIED = 0
#         DRAFT = 1
#         CREATING = 2
#         READY = 3
#         UPDATING = 4
#         DELETING = 5
#         DELETED = 6
#         FAILED = 7
#         ERROR_CODE_UNSPECIFIED = 0
#         CONNECTION_FAILURE = 1
#         AUTHENTICATION_FAILURE = 2
#         INVALID_CONNECTION_PROFILE_CONFIG = 3
#         VERSION_INCOMPATIBILITY = 4
#         CONNECTION_PROFILE_TYPES_INCOMPATIBILITY = 5
#         NO_PGLOGICAL_INSTALLED = 7
#         PGLOGICAL_NODE_ALREADY_EXISTS = 8
#         INVALID_WAL_LEVEL = 9
#         INVALID_SHARED_PRELOAD_LIBRARY = 10
#         INSUFFICIENT_MAX_REPLICATION_SLOTS = 11
#         INSUFFICIENT_MAX_WAL_SENDERS = 12
#         INSUFFICIENT_MAX_WORKER_PROCESSES = 13
#         UNSUPPORTED_EXTENSIONS = 14
#         UNSUPPORTED_MIGRATION_TYPE = 15
#         INVALID_RDS_LOGICAL_REPLICATION = 16
#         UNSUPPORTED_GTID_MODE = 17
#         UNSUPPORTED_TABLE_DEFINITION = 18
#         UNSUPPORTED_DEFINER = 19
#         CANT_RESTART_RUNNING_MIGRATION = 21


# Path: google/cloud/clouddms_v1/types/clouddms.py
import proto  # type: ignore
from google.cloud.clouddms_v1.types import clouddms_resources
from google.protobuf import field_mask_pb2  # type: ignore
from google.protobuf import timestamp_pb2  # type: ignore

        order_by (str):
            the order by fields for the result.
    """

    parent = proto.Field(proto.STRING, number=1,)
    page_size = proto.Field(proto.INT32, number=2,)
    page_token = proto.Field(proto.STRING, number=3,)
    filter = proto.Field(proto.STRING, number=4,)
    order_by = proto.Field(proto.STRING, number=5,)


class ListConnectionProfilesResponse(proto.Message):
    r"""Response message for 'ListConnectionProfiles' request.

    Attributes:
        connection_profiles (Sequence[google.cloud.clouddms_v1.types.ConnectionProfile]):
            The response list of connection profiles.
        next_page_token (str):
            A token, which can be sent as ``page_token`` to retrieve the
            next page. If this field is omitted, there are no subsequent
            pages.
        unreachable (Sequence[str]):
            Locations that could not be reached.
    """

    @property
    def raw_page(self):
        return self

    connection_profiles = proto.RepeatedField(

        proto.MESSAGE, number=1, message=clouddms_resources.ConnectionProfile,