コード例 #1
0
ファイル: plugins.py プロジェクト: caernel/wirecloud
    def publish(self, endpoint, wgt_file, user, request=None, template=None):

        if template is None:
            template = TemplateParser(wgt_file.get_template())

        resource_info = template.get_resource_info()

        mimetypes = {
            'widget': 'application/x-widget+mashable-application-component',
            'operator': 'application/x-operator+mashable-application-component',
            'mashup': 'application/x-mashup+mashable-application-component',
        }

        store = endpoint['store']
        adaptor = get_market_adaptor(self._user, self._name)
        user_data = get_market_user_data(user, self._user, self._name)
        storeclient = adaptor.get_store(store)

        store_token_key = store + '/token'
        if store_token_key in user_data:
            token = user_data[store_token_key]
        else:
            token = user_data['idm_token']

        storeclient.upload_resource(
            resource_info['title'],
            resource_info['version'],
            "_".join((resource_info['vendor'], resource_info['name'], resource_info['version'])) + '.wgt',
            resource_info['description'],
            mimetypes[resource_info['type']],
            wgt_file.get_underlying_file(),
            token
        )
コード例 #2
0
ファイル: plugins.py プロジェクト: ciniguez/FIREWA
    def download_resource(self, user, url, endpoint):

        store = endpoint['store']
        adaptor = get_market_adaptor(None, self._options['name'])
        user_data = get_market_user_data(user, self._options['user'], self._options['name'])
        storeclient = adaptor.get_store(store)
        return storeclient.download_resource(url, user_data[store + '/token'])
コード例 #3
0
    def publish(self, endpoint, wgt_file, user, request=None, template=None):

        if template is None:
            template = TemplateParser(wgt_file.get_template())

        resource_info = template.get_resource_processed_info(lang='en')

        mimetypes = {
            'widget': 'application/x-widget+mashable-application-component',
            'operator': 'application/x-operator+mashable-application-component',
            'mashup': 'application/x-mashup+mashable-application-component',
        }

        store = endpoint['store']
        adaptor = get_market_adaptor(self._user, self._name)
        user_data = get_market_user_data(user, self._user, self._name)
        storeclient = adaptor.get_store(store)

        store_token_key = store + '/token'
        if store_token_key in user_data:
            token = user_data[store_token_key]
        else:
            token = user_data['idm_token']

        wirecloud_plugin_supported = False
        try:
            supported_plugins = storeclient.get_supported_plugins(token)
            for plugin in supported_plugins:
                if plugin.get('name', '').lower() == 'wirecloud component':
                    wirecloud_plugin_supported = True
        except UnexpectedResponse as e:
            if e.status != 404:
                raise e

        if wirecloud_plugin_supported:
            storeclient.upload_resource(
                    resource_info['title'],
                    resource_info['version'],
                    "_".join((resource_info['vendor'], resource_info['name'], resource_info['version'])) + '.wgt',
                    resource_info['description'],
                    "Mashable application component",
                    wgt_file.get_underlying_file(),
                    token,
                    resource_type="Wirecloud component")
        else:
            storeclient.upload_resource(
                    resource_info['title'],
                    resource_info['version'],
                    "_".join((resource_info['vendor'], resource_info['name'], resource_info['version'])) + '.wgt',
                    resource_info['description'],
                    mimetypes[resource_info['type']],
                    wgt_file.get_underlying_file(),
                    token)
コード例 #4
0
    def publish(self, endpoint, wgt_file, user, request=None, template=None):

        if template is None:
            template = TemplateParser(wgt_file.get_template())

        resource_info = template.get_resource_processed_info(lang='en')

        mimetypes = {
            'widget': 'application/x-widget+mashable-application-component',
            'operator':
            'application/x-operator+mashable-application-component',
            'mashup': 'application/x-mashup+mashable-application-component',
        }

        store = endpoint['store']
        adaptor = get_market_adaptor(self._user, self._name)
        user_data = get_market_user_data(user, self._user, self._name)
        storeclient = adaptor.get_store(store)

        store_token_key = store + '/token'
        if store_token_key in user_data:
            token = user_data[store_token_key]
        else:
            token = user_data['idm_token']

        wirecloud_plugin_supported = False
        try:
            supported_plugins = storeclient.get_supported_plugins(token)
            for plugin in supported_plugins:
                if plugin.get('name', '').lower() == 'wirecloud component':
                    wirecloud_plugin_supported = True
        except UnexpectedResponse as e:
            if e.status != 404:
                raise e

        if wirecloud_plugin_supported:
            storeclient.upload_resource(
                resource_info['title'],
                resource_info['version'],
                "_".join((resource_info['vendor'], resource_info['name'],
                          resource_info['version'])) + '.wgt',
                resource_info['description'],
                "Mashable application component",
                wgt_file.get_underlying_file(),
                token,
                resource_type="Wirecloud component")
        else:
            storeclient.upload_resource(
                resource_info['title'], resource_info['version'], "_".join(
                    (resource_info['vendor'], resource_info['name'],
                     resource_info['version'])) + '.wgt',
                resource_info['description'], mimetypes[resource_info['type']],
                wgt_file.get_underlying_file(), token)
コード例 #5
0
    def download_resource(self, user, url, endpoint):

        store = endpoint['store']
        adaptor = get_market_adaptor(self._user, self._name)
        user_data = get_market_user_data(user, self._user, self._name)
        storeclient = adaptor.get_store(store)

        store_token_key = store + '/token'
        if store_token_key in user_data:
            token = user_data[store_token_key]
        else:
            token = user_data['idm_token']

        return storeclient.download_resource(url, token)
コード例 #6
0
    def download_resource(self, user, url, endpoint):

        store = endpoint['store']
        adaptor = get_market_adaptor(self._user, self._name)
        user_data = get_market_user_data(user, self._user, self._name)
        storeclient = adaptor.get_store(store)

        store_token_key = store + '/token'
        if store_token_key in user_data:
            token = user_data[store_token_key]
        else:
            token = user_data['idm_token']

        return storeclient.download_resource(url, token)