Exemplo n.º 1
0
    def get_resources(self):
        resources = []

        resource = extensions.ResourceExtension(
            'databases',
            mysql_service.SchemaController(),
            parent={
                'member_name': 'instance',
                'collection_name': '{tenant_id}/instances'
            })
        resources.append(resource)

        resource = extensions.ResourceExtension(
            'users',
            mysql_service.UserController(),
            parent={
                'member_name': 'instance',
                'collection_name': '{tenant_id}/instances'
            },
            member_actions={'update': 'PUT'},
            collection_actions={'update_all': 'PUT'})
        resources.append(resource)

        collection_url = '{tenant_id}/instances/:instance_id/users'
        resource = extensions.ResourceExtension(
            'databases',
            mysql_service.UserAccessController(),
            parent={
                'member_name': 'user',
                'collection_name': collection_url
            },
            collection_actions={'update': 'PUT'})
        resources.append(resource)

        resource = extensions.ResourceExtension(
            'root',
            common_service.RootController(),
            parent={
                'member_name': 'instance',
                'collection_name': '{tenant_id}/instances'
            },
            custom_routes=[{
                'include_parent_path': True,
                'path': '/root',
                'action': 'delete',
                'method': 'DELETE'
            }])
        resources.append(resource)

        resource = extensions.ResourceExtension(
            'root',
            common_service.RootController(),
            parent={
                'member_name': 'instance',
                'collection_name': '{tenant_id}/clusters'
            })
        resources.append(resource)

        return resources
Exemplo n.º 2
0
    def get_resources(self):
        resources = []
        serializer = wsgi.TroveResponseSerializer(
            body_serializers={
                'application/xml': wsgi.TroveXMLDictSerializer()
            })

        resource = extensions.ResourceExtension(
            'databases',
            service.SchemaController(),
            parent={
                'member_name': 'instance',
                'collection_name': '{tenant_id}/instances'
            },
            deserializer=wsgi.TroveRequestDeserializer(),
            serializer=serializer)
        resources.append(resource)

        resource = extensions.ResourceExtension(
            'users',
            service.UserController(),
            parent={
                'member_name': 'instance',
                'collection_name': '{tenant_id}/instances'
            },
            # deserializer=extensions.ExtensionsXMLSerializer()
            deserializer=wsgi.TroveRequestDeserializer(),
            serializer=serializer,
            member_actions={'update': 'PUT'},
            collection_actions={'update_all': 'PUT'})
        resources.append(resource)

        collection_url = '{tenant_id}/instances/:instance_id/users'
        resource = extensions.ResourceExtension(
            'databases',
            service.UserAccessController(),
            parent={
                'member_name': 'user',
                'collection_name': collection_url
            },
            deserializer=wsgi.TroveRequestDeserializer(),
            serializer=serializer,
            collection_actions={'update': 'PUT'})
        resources.append(resource)

        resource = extensions.ResourceExtension(
            'root',
            service.RootController(),
            parent={
                'member_name': 'instance',
                'collection_name': '{tenant_id}/instances'
            },
            deserializer=wsgi.TroveRequestDeserializer(),
            serializer=serializer)
        resources.append(resource)

        return resources
Exemplo n.º 3
0
    def get_resources(self):
        resources = []
        serializer = wsgi.TroveResponseSerializer(
            body_serializers={
                'application/xml': wsgi.TroveXMLDictSerializer()
            })
        instances = extensions.ResourceExtension(
            '{tenant_id}/mgmt/instances',
            MgmtInstanceController(),
            deserializer=wsgi.TroveRequestDeserializer(),
            serializer=serializer,
            member_actions={
                'root': 'GET',
                'diagnostics': 'GET',
                'hwinfo': 'GET',
                'action': 'POST'
            })
        resources.append(instances)

        hosts = extensions.ResourceExtension(
            '{tenant_id}/mgmt/hosts',
            HostController(),
            deserializer=wsgi.RequestDeserializer(),
            serializer=serializer,
            member_actions={})
        resources.append(hosts)

        quota = extensions.ResourceExtension(
            '{tenant_id}/mgmt/quotas',
            QuotaController(),
            deserializer=wsgi.RequestDeserializer(),
            serializer=serializer,
            member_actions={})
        resources.append(quota)

        storage = extensions.ResourceExtension(
            '{tenant_id}/mgmt/storage',
            StorageController(),
            deserializer=wsgi.RequestDeserializer(),
            serializer=serializer,
            member_actions={})
        resources.append(storage)

        host_instances = extensions.ResourceExtension(
            'instances',
            hostservice.HostInstanceController(),
            parent={
                'member_name': 'host',
                'collection_name': '{tenant_id}/mgmt/hosts'
            },
            deserializer=wsgi.RequestDeserializer(),
            serializer=serializer,
            collection_actions={'action': 'POST'})
        resources.append(host_instances)

        return resources
Exemplo n.º 4
0
    def get_resources(self):
        resources = []

        if CONF.trove_security_groups_support:
            security_groups = extensions.ResourceExtension(
                '{tenant_id}/security-groups',
                service.SecurityGroupController())
            resources.append(security_groups)

            security_group_rules = extensions.ResourceExtension(
                '{tenant_id}/security-group-rules',
                service.SecurityGroupRuleController())
            resources.append(security_group_rules)

        return resources
Exemplo n.º 5
0
    def get_resources(self):
        resources = []

        instances = extensions.ResourceExtension('{tenant_id}/mgmt/instances',
                                                 MgmtInstanceController(),
                                                 member_actions={
                                                     'root': 'GET',
                                                     'diagnostics': 'GET',
                                                     'hwinfo': 'GET',
                                                     'rpc_ping': 'GET',
                                                     'action': 'POST'
                                                 })
        resources.append(instances)

        clusters = extensions.ResourceExtension(
            '{tenant_id}/mgmt/clusters',
            ClusterController(),
            member_actions={'action': 'POST'})
        resources.append(clusters)

        hosts = extensions.ResourceExtension('{tenant_id}/mgmt/hosts',
                                             HostController(),
                                             member_actions={})
        resources.append(hosts)

        quota = extensions.ResourceExtension('{tenant_id}/mgmt/quotas',
                                             QuotaController(),
                                             member_actions={})
        resources.append(quota)

        storage = extensions.ResourceExtension('{tenant_id}/mgmt/storage',
                                               StorageController(),
                                               member_actions={})
        resources.append(storage)

        host_instances = extensions.ResourceExtension(
            'instances',
            hostservice.HostInstanceController(),
            parent={
                'member_name': 'host',
                'collection_name': '{tenant_id}/mgmt/hosts'
            },
            collection_actions={'action': 'POST'})
        resources.append(host_instances)

        upgrade = extensions.ResourceExtension(
            '{tenant_id}/mgmt/instances/{instance_id}/upgrade',
            UpgradeController(),
            member_actions={})
        resources.append(upgrade)

        datastore_configuration_parameters = extensions.ResourceExtension(
            '{tenant_id}/mgmt/datastores/versions/{version_id}/parameters',
            conf_service.ConfigurationsParameterController(),
            member_actions={})
        resources.append(datastore_configuration_parameters)

        return resources
Exemplo n.º 6
0
    def get_resources(self):
        resources = []
        resource = extensions.ResourceExtension('{tenant_id}/mgmt/accounts',
                                                service.AccountController())
        resources.append(resource)

        return resources
Exemplo n.º 7
0
Arquivo: mysql.py Projeto: sitle/trove
    def get_resources(self):
        resources = []

        resource = extensions.ResourceExtension('databases',
                                                service.SchemaController(),
                                                parent={
                                                    'member_name':
                                                    'instance',
                                                    'collection_name':
                                                    '{tenant_id}/instances'
                                                })
        resources.append(resource)

        resource = extensions.ResourceExtension(
            'users',
            service.UserController(),
            parent={
                'member_name': 'instance',
                'collection_name': '{tenant_id}/instances'
            },
            member_actions={'update': 'PUT'},
            collection_actions={'update_all': 'PUT'})
        resources.append(resource)

        collection_url = '{tenant_id}/instances/:instance_id/users'
        resource = extensions.ResourceExtension(
            'databases',
            service.UserAccessController(),
            parent={
                'member_name': 'user',
                'collection_name': collection_url
            },
            collection_actions={'update': 'PUT'})
        resources.append(resource)

        resource = extensions.ResourceExtension('root',
                                                service.RootController(),
                                                parent={
                                                    'member_name':
                                                    'instance',
                                                    'collection_name':
                                                    '{tenant_id}/instances'
                                                })
        resources.append(resource)

        return resources
Exemplo n.º 8
0
    def get_resources(self):
        resources = []
        serializer = wsgi.TroveResponseSerializer(
            body_serializers={'application/xml':
                              wsgi.TroveXMLDictSerializer()})

        if CONF.trove_security_groups_support:
            security_groups = extensions.ResourceExtension(
                '{tenant_id}/security-groups',
                service.SecurityGroupController(),
                deserializer=wsgi.TroveRequestDeserializer(),
                serializer=serializer)
            resources.append(security_groups)

            security_group_rules = extensions.ResourceExtension(
                '{tenant_id}/security-group-rules',
                service.SecurityGroupRuleController(),
                deserializer=wsgi.TroveRequestDeserializer(),
                serializer=serializer)
            resources.append(security_group_rules)

        return resources
Exemplo n.º 9
0
    def get_resources(self):
        resources = []
        instances = extensions.ResourceExtension('{tenant_id}/mgmt/instances',
                                                 MgmtInstanceController(),
                                                 member_actions={
                                                     'root': 'GET',
                                                     'diagnostics': 'GET',
                                                     'hwinfo': 'GET',
                                                     'action': 'POST'
                                                 })
        resources.append(instances)

        hosts = extensions.ResourceExtension('{tenant_id}/mgmt/hosts',
                                             HostController(),
                                             member_actions={})
        resources.append(hosts)

        quota = extensions.ResourceExtension('{tenant_id}/mgmt/quotas',
                                             QuotaController(),
                                             member_actions={})
        resources.append(quota)

        storage = extensions.ResourceExtension('{tenant_id}/mgmt/storage',
                                               StorageController(),
                                               member_actions={})
        resources.append(storage)

        host_instances = extensions.ResourceExtension(
            'instances',
            hostservice.HostInstanceController(),
            parent={
                'member_name': 'host',
                'collection_name': '{tenant_id}/mgmt/hosts'
            },
            collection_actions={'action': 'POST'})
        resources.append(host_instances)

        return resources
Exemplo n.º 10
0
    def get_resources(self):
        resources = []
        serializer = wsgi.TroveResponseSerializer(
            body_serializers={
                'application/xml': wsgi.TroveXMLDictSerializer()
            })
        resource = extensions.ResourceExtension(
            '{tenant_id}/mgmt/accounts',
            service.AccountController(),
            deserializer=wsgi.RequestDeserializer(),
            serializer=serializer)
        resources.append(resource)

        return resources
Exemplo n.º 11
0
    def get_resources(self):
        resources = []

        instances = extensions.ResourceExtension(
            '{tenant_id}/mgmt/instances',
            MgmtInstanceController(),
            member_actions={'root': 'GET',
                            'diagnostics': 'GET',
                            'hwinfo': 'GET',
                            'rpc_ping': 'GET',
                            'action': 'POST'})
        resources.append(instances)

        clusters = extensions.ResourceExtension(
            '{tenant_id}/mgmt/clusters',
            MgmtClusterController(),
            member_actions={'action': 'POST'})
        resources.append(clusters)

        quota = extensions.ResourceExtension(
            '{tenant_id}/mgmt/quotas',
            QuotaController(),
            member_actions={})
        resources.append(quota)

        upgrade = extensions.ResourceExtension(
            '{tenant_id}/mgmt/instances/{instance_id}/upgrade',
            UpgradeController(),
            member_actions={})
        resources.append(upgrade)

        datastore_configuration_parameters = extensions.ResourceExtension(
            '{tenant_id}/mgmt/datastores/versions/{version_id}/parameters',
            conf_service.ConfigurationsParameterController(),
            member_actions={})
        resources.append(datastore_configuration_parameters)

        datastore_version = extensions.ResourceExtension(
            '{tenant_id}/mgmt/datastore-versions',
            DatastoreVersionController(),
            member_actions={})
        resources.append(datastore_version)

        return resources