work in progress: process upload of resources from loops.agent via HTTP PUT
git-svn-id: svn://svn.cy55.de/Zope3/src/loops/trunk@1954 fd906abe-77d9-0310-91a1-e0d9ade77398
This commit is contained in:
parent
1d0ff2aed2
commit
a689fb09bb
3 changed files with 9 additions and 5 deletions
|
@ -4,4 +4,3 @@ crawl[0].pattern = '*.txt'
|
||||||
crawl[0].transport = 'httpput'
|
crawl[0].transport = 'httpput'
|
||||||
crawl[0].repeat = 0
|
crawl[0].repeat = 0
|
||||||
transport.serverURL = 'http://localhost:8123/loops'
|
transport.serverURL = 'http://localhost:8123/loops'
|
||||||
#transport.serverURL = 'http://localhost:12080/sites/testsite/resources/'
|
|
||||||
|
|
|
@ -22,6 +22,7 @@ Transporter base classes.
|
||||||
$Id$
|
$Id$
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
from base64 import b64encode
|
||||||
from twisted.internet import reactor
|
from twisted.internet import reactor
|
||||||
from twisted.internet.defer import Deferred, DeferredList, fail
|
from twisted.internet.defer import Deferred, DeferredList, fail
|
||||||
from twisted.web.client import getPage
|
from twisted.web.client import getPage
|
||||||
|
@ -93,12 +94,15 @@ class Transporter(object):
|
||||||
app = resource.application
|
app = resource.application
|
||||||
deferreds = []
|
deferreds = []
|
||||||
metadata = resource.metadata
|
metadata = resource.metadata
|
||||||
|
auth = b64encode(':'.join((self.userName, self.password)))
|
||||||
|
headers = {'Authorization': 'Basic ' + auth}
|
||||||
if metadata is not None:
|
if metadata is not None:
|
||||||
url = self.makePath('.meta', app, path, 'xml')
|
url = self.makePath('.meta', app, path, 'xml')
|
||||||
deferreds.append(
|
deferreds.append(getPage(url, method=self.method, headers=headers,
|
||||||
getPage(url, method=self.method, postdata=metadata.asXML()))
|
postdata=metadata.asXML()))
|
||||||
url = self.makePath('.data', app, path)
|
url = self.makePath('.data', app, path)
|
||||||
deferreds.append(getPage(url, method=self.method, postdata=text))
|
deferreds.append(getPage(url, method=self.method, headers=headers,
|
||||||
|
postdata=text))
|
||||||
return DeferredList(deferreds, fireOnOneErrback=True)
|
return DeferredList(deferreds, fireOnOneErrback=True)
|
||||||
|
|
||||||
def makePath(self, infoType, app, path, extension=None):
|
def makePath(self, infoType, app, path, extension=None):
|
||||||
|
|
|
@ -150,7 +150,8 @@
|
||||||
|
|
||||||
<require
|
<require
|
||||||
permission="zope.View"
|
permission="zope.View"
|
||||||
interface="zope.app.container.interfaces.IReadContainer" />
|
interface="zope.app.container.interfaces.IReadContainer"
|
||||||
|
attributes="getLoopsRoot" />
|
||||||
|
|
||||||
<require
|
<require
|
||||||
permission="zope.ManageContent"
|
permission="zope.ManageContent"
|
||||||
|
|
Loading…
Add table
Reference in a new issue