[tahoe-lafs-trac-stream] [tahoe-lafs] #1663: Add a concise table of the URL tree to webapi.rst.
tahoe-lafs
trac at tahoe-lafs.org
Sun Jan 22 01:28:50 UTC 2012
#1663: Add a concise table of the URL tree to webapi.rst.
-----------------------------+-----------------------
Reporter: nejucomo | Owner: nobody
Type: enhancement | Status: new
Priority: major | Milestone: undecided
Component: unknown | Version: 1.9.0
Resolution: | Keywords:
Launchpad Bug: |
-----------------------------+-----------------------
Comment (by nejucomo):
As a first attempt to do this automatically, I learned that Nevow Page's
will delegate requests to sub-url-paths by looking for {{{child_<path
segment>}}} attributes or methods. A quick grep gives a basic partial
picture of the URL namespace (see below).
The {{{allmydata.web.root.Root}}} class is a good starting point. There
are ''at least'' these top-level handlers:
* {{{/operations}}}
* {{{/storage}}}
* {{{/uri}}}
* {{{/cap}}}
* {{{/file}}}
* {{{/named}}}
* {{{/status}}}
* {{{/statistics}}}
This is based on this simplistic grep:
{{{
$ find src/allmydata/web -type f -name '*.py' -print0 | xargs -0 grep -E
'^class |child_' | grep -B 1 'child_'
src/allmydata/web/directory.py:class DirectoryNodeHandler(RenderMixin,
rend.Page, ReplaceMeMixin):
src/allmydata/web/directory.py: d =
self.node.move_child_to(from_name, self.node, to_name, replace)
--
src/allmydata/web/introweb.py:class IntroducerRoot(rend.Page):
src/allmydata/web/introweb.py: child_operations = None
--
src/allmydata/web/root.py:class Root(rend.Page):
src/allmydata/web/root.py: self.child_operations =
operations.OphandleTable(clock)
src/allmydata/web/root.py: self.child_storage =
storage.StorageStatus(s)
src/allmydata/web/root.py: self.child_uri = URIHandler(client)
src/allmydata/web/root.py: self.child_cap = URIHandler(client)
src/allmydata/web/root.py: self.child_file = FileHandler(client)
src/allmydata/web/root.py: self.child_named = FileHandler(client)
src/allmydata/web/root.py: self.child_status =
status.Status(client.get_history())
src/allmydata/web/root.py: self.child_statistics =
status.Statistics(client.stats_provider)
src/allmydata/web/root.py: def child_helper_status(self, ctx):
src/allmydata/web/root.py: child_provisioning =
provisioning.ProvisioningTool()
src/allmydata/web/root.py: child_reliability =
reliability.ReliabilityTool()
src/allmydata/web/root.py: child_reliability = NoReliability()
src/allmydata/web/root.py: child_report_incident = IncidentReporter()
src/allmydata/web/root.py: #child_server # let's reserve this for
storage-server-over-HTTP
--
src/allmydata/web/status.py:class
DownloadStatusPage(DownloadResultsRendererMixin, rend.Page):
src/allmydata/web/status.py: def child_timeline(self, ctx):
src/allmydata/web/status.py: def child_event_json(self, ctx):
}}}
--
Ticket URL: <https://tahoe-lafs.org/trac/tahoe-lafs/ticket/1663#comment:1>
tahoe-lafs <https://tahoe-lafs.org>
secure decentralized storage
More information about the tahoe-lafs-trac-stream
mailing list