Merge lp:~jkakar/launchpadlib/testing-support into lp:launchpadlib

Proposed by Jamu Kakar
Status: Rejected
Rejected by: Leonard Richardson
Proposed branch: lp:~jkakar/launchpadlib/testing-support
Merge into: lp:launchpadlib
Diff against target: 28362 lines
6 files modified
.bzrignore (+2/-0)
Makefile (+5/-0)
src/launchpadlib/testing/launchpad-wadl.xml (+27425/-0)
src/launchpadlib/testing/launchpad.py (+455/-0)
src/launchpadlib/testing/resources.py (+46/-0)
src/launchpadlib/testing/tests/test_launchpad.py (+394/-0)
To merge this branch: bzr merge lp:~jkakar/launchpadlib/testing-support
Reviewer Review Type Date Requested Status
Leonard Richardson (community) Disapprove
Review via email: mp+14444@code.launchpad.net
To post a comment you must log in.
Revision history for this message
Jamu Kakar (jkakar) wrote :

You can get a readable diff with this command:

bzr diff -r ancestor:lp:launchpadlib `bzr st -S -r ancestor:lp:launchpadlib|cut -d ' ' -f 3|grep -v xml`|less

This branch introduces a new launchpadlib.testing.launchpad module
that contains a FakeLaunchpad. This is a fake version of
launchpadlib.launchpad.Launchpad for use in unit tests. The basic
idea is that you set sample data on the fake API in the setup phase
of your test, for example:

    def test_me(self):
        credentials = object()
        launchpad = FakeLaunchpad(credentials)
        launchpad.me = dict(name="foo", display_name="Foo")
        self.assertEqual("foo", launchpad.me.name)
        self.assertEqual("Foo", launchpad.me.display_name)

Objects that would normally be returned by the API are represented
as dicts, as can be seen above with the person set on
'launchpad.me'. The 'name' and 'display_name' attributes are
validated against the WADL definition to make sure that they are
allowed to exist and to make sure they contain valid values. Only
partial objects need to be supplied, to make it easy to write tests
without creating complete sample data sets. There are tests in the
branch that should help you make sense of the implementation.

Other notes:

- Method parameters are not validated at all.

- There's no support for deleting sample data set on the fake API
  instance.

- The implementation is a bit hackish, hard to understand and, in
  some places, relies on heuristics.

- I've tried as much as possible to mimic the behaviour of the real
  Launchpad instance, but there are no tests that ensure the fake
  and real versions of the API behave the same way. It'd be worth
  adding this kind of thing in the future.

- I haven't tried to use this to write tests for a real application
  yet, so there may some obvious things missing.

- There is no user documentation. It'd be good to add a doctest in
  the future that describes and demonstrates the behaviour of a
  FakeLaunchpad instance.

Revision history for this message
Jamu Kakar (jkakar) wrote :

I've just realized that I've forgotten to provide handling of the
lp_save method. I'll hack on that, but in the meantime I would
appreciate a review of what's here.

Revision history for this message
Leonard Richardson (leonardr) wrote :

Jamu,

This is a branch I have often thought about writing and actually started work on recently. I think about writing this branch every time I have to check out a Launchpad instance just so I can run the launchpadlib tests. Your implementation of this branch looks much better than mine would have been. Jonathan Lange has also talked about writing a similar branch. But the reason I never wrote this branch is the reason I must regretfully vote "disapprove" on this code review: its promise of additional test coverage is mostly an illusion.

As you put it, "there are no tests that ensure the fake and real versions of the API behave the same way." It's generally safe to assume that the Launchpad WADL is an accurate description of the Launchpad web service, but 1) the WADL changes every month, and 2) WADL only describes the HTTP interface, not the server-side logic. (As you put it, "[m]ethod parameters are not validated at all.")

So, you can test your script against a fake Launchpad that has the basic structure of an unknown old version of Launchpad. If you want to reproduce the basic structure of the most current version of Launchpad, you can download a fresh WADL every time, but it's not a good idea to introduce a network dependency into your tests. Or, you can check out a Launchpad instance and download its WADL through a local connection.

But once you've checked out a Launchpad instance, you can "just" run your tests within the Launchpad instance, the way launchpadlib's tests are run. I put "just" in quotes because this whole process is currently quite annoying--but you are running against a full Launchpad instance with all the features of Launchpad and a well-known data set. If your test passes here, you know it will pass against the real Launchpad.

If this alternative didn't exist (eg. because Launchpad was not open source), then your branch would make a lot of sense. It lets you make sure your script doesn't violate the web service's published contract, which is better than nothing. But because Launchpad is open source, you can do better by going through some extra trouble.

In short, I think it's more promising to work on making it easier to run tests in a Launchpad instance. I'd like to hear your thoughts on this. Maybe you think it'll never be easy enough to test your script against a locally running Launchpad and that this is the next best thing. Even if I accepted that, I'd like to see a better solution than including an old version of the Launchpad WADL in launchpadlib. (We have an old version of the Launchpad WADL in wadllib, but it's not used to test features of Launchpad. It was just a nice complicated WADL file we happened to have lying around.)

review: Disapprove
Revision history for this message
Francis J. Lacoste (flacoste) wrote :

On November 17, 2009, Leonard Richardson wrote:
> But the reason I never wrote this branch is the reason I must regretfully
> vote "disapprove" on this code review: its promise of additional test
> coverage is mostly an illusion.

I disagree with this assessment. It is true that this doesn't help at all in
ensuring integration-level tests, but it does help in ensuring unit-test
coverage.

This is basically an easy way to write stubs that are at least to some extent
share the external interface with the Launchpad web service.

Unit-tests are there to assert that your code works as you expect it to work
_as a unit_. The fact that the code might not work when used against the real
web service is an integration problem and should be covered by a separate
testing strategy (integration testing).

But unit-tests are very useful for a fast TDD cycle, which is very hard to
achieve when you are doing integration testing and have to pay the Launchpad
start-up cost.

I agree thought that the WADL moving target is the biggest problem here. Maybe
if the build step could try to download the latest one, that would be less of
a problem.

--
Francis J. Lacoste
<email address hidden>

Revision history for this message
Jamu Kakar (jkakar) wrote :

Thanks for the comments! I have some opinions/ideas about the
branch:

- I agree that keeping FakeLaunchpad's behaviour in sync with a real
  Launchpad instance is tricky. I haven't done anything about it in
  this branch mostly because of time, but writing a set of tests to
  ensure that FakeLaunchpad correctly mirrors Launchpad is not
  impossible.

- The benefit of being able to write unit tests is massive. For
  example, it's particularly difficult to write a robust
  launchpadlib-using application because accessing (many) attributes
  can result in HTTP exceptions being raised. Dealing with such a
  fragile environment without tests is pretty much impossible. I
  would rather deal with problems that come up due to fake/real
  mismatches and be able to write tests than not.

- Running Launchpad locally is painful. Asking users of the API to
  setup a local Launchpad installation creates a barrier to entry
  and an ongoing maintenance headache. If this turns out to be the
  answer I suspect users will opt not to write non-trivial
  applications with launchpadlib. I will be much less excited about
  using the library if I have to maintain a local Launchpad setup.

- I included a WADL file in the branch because it was the easiest
  way for me to get going with the idea. I've envisioned making it
  possible to download a WADL file as part of a test run from the
  beginning. Adding a network dependency to a test suite is an
  annoyance, but one I'd be happy to live with.

- The note about validating method parameters was not about it being
  impossible, just about it not being done yet. The WADL file
  includes enough data to do some validation. It's true that the
  WADL file doesn't provide all the information necessary to do a
  perfect job, but I feel it provides enough to be useful.

Obviously I feel that this branch (or the idea, at least) is useful,
otherwise I wouldn't have implemented it. I'm even curious about
taking it farther and seeing if something like this can be pushed
into lazr.restful[,client], but I don't know enough about either of
those things to know how realistic that might be.

Regardless of whether or not this branch is accepted, I feel that
the testing story for launchpadlib is rather poor at present and
that something needs to be done about it. I want to write
applications using launchpadlib that I can depend on and, at
present, I can't do that.

Revision history for this message
Jamu Kakar (jkakar) wrote :

There's another important point that I think is obvious, but I'll
mention it anyway: it's important for tests to be fast. The tests
I've written for FakeLaunchpad itself demonstrate that this method
can result in fast tests. The 40 or so tests I've added run in 0.1s
locally, though they achieve this speed by caching the wadllib
Application object and reusing it for each test. Even still,
reloading the WADL file isn't too terrible.

launchpadlib is quite slow because of all the round trips. Writing
a test suite for a non-trivial application that needs a real
Launchpad API server will eventually result in a slow test suite
that will be annoying to work with.

Another important point is that using a real Launchpad API server
for unit tests will cause difficulty when it comes to simulating
failures. Doing so with FakeLaunchpad will be much easier.

Revision history for this message
Jamu Kakar (jkakar) wrote :

Leonard:

Before you go, can you please comment on this? I realize it's not
quite merge-ready but I'd like to know if you still disapprove of
the idea entirely or if the arguments that have been made have
swayed your opinion. I'd like to finish up the missing bits
(primarily handling lp_save) and get this merged, hopefully before
the end of the year.

Revision history for this message
Leonard Richardson (leonardr) wrote :

Attention conservation notice: go ahead.

When I tried to write a branch like this in the past, I was always trying to test launchpadlib itself. My goal was to set up a dummy Launchpad web service and make sure that the Launchpad object sent the right HTTP requests when you manipulated it, and did the right thing with different HTTP responses from the dummy service.

I was judging your branch against these criteria, but you're doing something different. You don't dummy the Launchpad web service to test the Launchpad object; you dummy the Launchpad object to test other stuff. Your dummy object can't be used to test the Launchpad object except on a superficial level, but it is very useful for testing code that uses the Launchpad class. So I think it's good enough for what it does.

We all agree it would be better if tests ran against a real Launchpad instance, but that's slow and complicated, and running against an up-to-date WADL gets us most of the way there. So please continue with this work.

Revision history for this message
Jamu Kakar (jkakar) wrote :

> When I tried to write a branch like this in the past, I was always trying to
> test launchpadlib itself. My goal was to set up a dummy Launchpad web service
> and make sure that the Launchpad object sent the right HTTP requests when you
> manipulated it, and did the right thing with different HTTP responses from the
> dummy service.

My initial attempts at solving the problem I have (make it easy to
test applications that use launchpadlib) involved this kind of
thing, but I quickly realized that it was going to be very painful.

> I was judging your branch against these criteria, but you're doing something
> different. You don't dummy the Launchpad web service to test the Launchpad
> object; you dummy the Launchpad object to test other stuff. Your dummy object
> can't be used to test the Launchpad object except on a superficial level, but
> it is very useful for testing code that uses the Launchpad class. So I think
> it's good enough for what it does.

Right, FakeLaunchpad can't be used to test Launchpad in any
meaningful way. I would still like to explore the idea of writing
some set of integration tests to ensure that the FakeLaunchpad and
Launchpad objects behave the same way, but it's not exactly clear to
me what the best way to do that is yet.

> We all agree it would be better if tests ran against a real Launchpad
> instance, but that's slow and complicated, and running against an up-to-date
> WADL gets us most of the way there. So please continue with this work.

Great, thanks a lot!

Unmerged revisions

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file '.bzrignore'
2--- .bzrignore 2009-03-19 15:22:56 +0000
3+++ .bzrignore 2009-11-04 22:40:23 +0000
4@@ -9,3 +9,5 @@
5 build
6 *.egg
7 dist
8+eggs
9+_trial_temp
10
11=== added file 'Makefile'
12--- Makefile 1970-01-01 00:00:00 +0000
13+++ Makefile 2009-11-04 22:40:23 +0000
14@@ -0,0 +1,5 @@
15+check:
16+ @PYTHONPATH=$(PYTHONPATH):src trial src/launchpadlib
17+
18+clean:
19+ find . -name \*pyc -exec rm {} \;
20\ No newline at end of file
21
22=== added file 'src/launchpadlib/testing/launchpad-wadl.xml'
23--- src/launchpadlib/testing/launchpad-wadl.xml 1970-01-01 00:00:00 +0000
24+++ src/launchpadlib/testing/launchpad-wadl.xml 2009-11-04 22:40:23 +0000
25@@ -0,0 +1,27425 @@
26+<?xml version="1.0"?>
27+<!DOCTYPE application [
28+ <!ENTITY nbsp "\&#160;">
29+]>
30+<wadl:application xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
31+ xmlns="http://research.sun.com/wadl/2006/10"
32+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
33+ xmlns:wadl="http://research.sun.com/wadl/2006/10"
34+ xsi:schemaLocation="http://research.sun.com/wadl/2006/10/wadl.xsd">
35+
36+ <!--There is one "service root" resource, located (as you'd expect)
37+ at the service root. This very document is the WADL
38+ representation of the "service root" resource.-->
39+ <wadl:resources base="https://api.edge.launchpad.net/beta/">
40+ <wadl:resource path="" type="#service-root"/>
41+ </wadl:resources>
42+
43+ <!--A "service root" resource responds to GET.-->
44+ <wadl:resource_type id="service-root">
45+ <wadl:doc>The root of the web service.</wadl:doc>
46+ <wadl:method name="GET" id="service-root-get">
47+ <wadl:response>
48+ <wadl:representation href="#service-root-json"/>
49+ <wadl:representation mediaType="application/vd.sun.wadl+xml" id="service-root-wadl"/>
50+ </wadl:response>
51+ </wadl:method>
52+ </wadl:resource_type>
53+
54+ <!--The JSON representation of a "service root" resource contains a
55+ number of links to collection-type resources.-->
56+ <wadl:representation mediaType="application/json" id="service-root-json">
57+
58+ <wadl:param style="plain" path="$['me_link']"
59+ name="me_link">
60+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
61+ </wadl:param>
62+
63+
64+ <wadl:param style="plain"
65+ path="$['cves_collection_link']"
66+ name="cves_collection_link">
67+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#cves"/>
68+ </wadl:param>
69+
70+
71+ <wadl:param style="plain"
72+ path="$['branches_collection_link']"
73+ name="branches_collection_link">
74+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branches"/>
75+ </wadl:param>
76+
77+
78+ <wadl:param style="plain"
79+ path="$['project_groups_collection_link']"
80+ name="project_groups_collection_link">
81+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#project_groups"/>
82+ </wadl:param>
83+
84+
85+ <wadl:param style="plain"
86+ path="$['distributions_collection_link']"
87+ name="distributions_collection_link">
88+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#distributions"/>
89+ </wadl:param>
90+
91+
92+ <wadl:param style="plain"
93+ path="$['projects_collection_link']"
94+ name="projects_collection_link">
95+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#projects"/>
96+ </wadl:param>
97+
98+
99+ <wadl:param style="plain"
100+ path="$['packagesets_collection_link']"
101+ name="packagesets_collection_link">
102+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#packagesets"/>
103+ </wadl:param>
104+
105+
106+ <wadl:param style="plain" path="$['pillars_link']"
107+ name="pillars_link">
108+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#pillars"/>
109+ </wadl:param>
110+
111+
112+ <wadl:param style="plain"
113+ path="$['translation_import_queue_entries_collection_link']"
114+ name="translation_import_queue_entries_collection_link">
115+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#translation_import_queue_entries"/>
116+ </wadl:param>
117+
118+
119+ <wadl:param style="plain"
120+ path="$['people_collection_link']"
121+ name="people_collection_link">
122+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#people"/>
123+ </wadl:param>
124+
125+
126+ <wadl:param style="plain"
127+ path="$['bugs_collection_link']"
128+ name="bugs_collection_link">
129+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#bugs"/>
130+ </wadl:param>
131+
132+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
133+ <wadl:doc>The link to the WADL description of this resource.</wadl:doc>
134+ <wadl:link/>
135+ </wadl:param>
136+ </wadl:representation>
137+
138+ <!--In addition to the service root, this document describes all the
139+ types of resources you might encounter as you browse this web
140+ service.-->
141+
142+ <!--Begin resource_type definitions for collection resources.-->
143+
144+ <wadl:resource_type id="branches">
145+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
146+Interface representing the set of branches.
147+</wadl:doc>
148+ <wadl:method name="GET" id="branches-get">
149+ <wadl:response>
150+ <wadl:representation
151+ href="https://api.edge.launchpad.net/beta/#branch-page"/>
152+ <wadl:representation
153+ mediaType="application/vd.sun.wadl+xml"
154+ id="branches-wadl"/>
155+ </wadl:response>
156+ </wadl:method>
157+
158+ <wadl:method id="branches-getByUniqueName" name="GET">
159+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
160+<p>Find a branch by its ~owner/product/name unique name.</p>
161+<p>Return None if no match was found.</p>
162+
163+</wadl:doc>
164+ <wadl:request>
165+
166+ <wadl:param style="query" name="ws.op"
167+ required="true"
168+ fixed="getByUniqueName">
169+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
170+ </wadl:param>
171+ <wadl:param style="query" required="true"
172+ name="unique_name">
173+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
174+Branch unique name
175+</wadl:doc>
176+
177+ </wadl:param>
178+
179+ </wadl:request>
180+ <wadl:response>
181+
182+ <wadl:representation
183+ href="https://api.edge.launchpad.net/beta/#branch-full"/>
184+ </wadl:response>
185+ </wadl:method>
186+ <wadl:method id="branches-getByUrl" name="GET">
187+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
188+<p>Find a branch by URL.</p>
189+<p>Either from the external specified in Branch.url, from the URL on
190+<a class="rst-reference external" href="http://bazaar.launchpad.net/" target="_top">http://bazaar.launchpad.net/</a> or the lp: URL.</p>
191+<p>Return None if no match was found.</p>
192+
193+</wadl:doc>
194+ <wadl:request>
195+
196+ <wadl:param style="query" name="ws.op"
197+ required="true" fixed="getByUrl">
198+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
199+ </wadl:param>
200+ <wadl:param style="query" required="true"
201+ name="url">
202+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
203+Branch URL
204+</wadl:doc>
205+
206+ </wadl:param>
207+
208+ </wadl:request>
209+ <wadl:response>
210+
211+ <wadl:representation
212+ href="https://api.edge.launchpad.net/beta/#branch-full"/>
213+ </wadl:response>
214+ </wadl:method>
215+ </wadl:resource_type>
216+
217+
218+
219+ <wadl:resource_type id="cves">
220+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
221+The set of ICve objects.
222+</wadl:doc>
223+ <wadl:method name="GET" id="cves-get">
224+ <wadl:response>
225+ <wadl:representation
226+ href="https://api.edge.launchpad.net/beta/#cve-page"/>
227+ <wadl:representation
228+ mediaType="application/vd.sun.wadl+xml" id="cves-wadl"/>
229+ </wadl:response>
230+ </wadl:method>
231+
232+ </wadl:resource_type>
233+
234+
235+
236+ <wadl:resource_type id="distributions">
237+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
238+Interface for DistrosSet
239+</wadl:doc>
240+ <wadl:method name="GET" id="distributions-get">
241+ <wadl:response>
242+ <wadl:representation
243+ href="https://api.edge.launchpad.net/beta/#distribution-page"/>
244+ <wadl:representation
245+ mediaType="application/vd.sun.wadl+xml"
246+ id="distributions-wadl"/>
247+ </wadl:response>
248+ </wadl:method>
249+
250+ </wadl:resource_type>
251+
252+
253+
254+ <wadl:resource_type id="bugs">
255+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
256+Application root for malone.
257+</wadl:doc>
258+ <wadl:method name="GET" id="bugs-get">
259+ <wadl:response>
260+ <wadl:representation
261+ href="https://api.edge.launchpad.net/beta/#bug-page"/>
262+ <wadl:representation
263+ mediaType="application/vd.sun.wadl+xml" id="bugs-wadl"/>
264+ </wadl:response>
265+ </wadl:method>
266+
267+ <wadl:method id="bugs-createBug" name="POST">
268+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
269+<p>Create a bug (with an appropriate bugtask) and return it.</p>
270+<table class="rst-docutils field-list" frame="void" rules="none">
271+<col class="field-name" />
272+<col class="field-body" />
273+<tbody valign="top">
274+<tr class="rst-field"><th class="rst-field-name">param target:</th><td class="rst-field-body">The Product, Distribution or DistributionSourcePackage
275+affected by this bug.</td>
276+</tr>
277+</tbody>
278+</table>
279+<p>Things to note when using this factory:</p>
280+<blockquote>
281+<ul class="rst-simple">
282+<li>the owner will be subscribed to the bug</li>
283+<li>distribution, product and package contacts (whichever ones are
284+applicable based on the bug report target) will bug subscribed to
285+all <em>public bugs only</em></li>
286+<li>for public upstreams bugs where there is no upstream bug contact,
287+the product owner will be subscribed instead</li>
288+</ul>
289+</blockquote>
290+
291+</wadl:doc>
292+ <wadl:request>
293+ <wadl:representation
294+ mediaType="application/x-www-form-urlencoded">
295+ <wadl:param style="query" name="ws.op"
296+ required="true" fixed="createBug">
297+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
298+ </wadl:param>
299+ <wadl:param style="query" required="false"
300+ name="security_related">
301+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
302+This bug is a security vulnerability
303+</wadl:doc>
304+
305+ </wadl:param>
306+ <wadl:param style="query" required="true"
307+ name="target">
308+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
309+The project, distribution or source package that has this bug.
310+</wadl:doc>
311+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#bug_target"/>
312+ </wadl:param>
313+ <wadl:param style="query" required="false"
314+ name="tags">
315+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
316+<p>Tags</p>
317+<p>Separated by whitespace.</p>
318+
319+</wadl:doc>
320+
321+ </wadl:param>
322+ <wadl:param style="query" required="true"
323+ name="title">
324+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
325+<p>Summary</p>
326+<p>A one-line summary of the problem.</p>
327+
328+</wadl:doc>
329+
330+ </wadl:param>
331+ <wadl:param style="query" required="false"
332+ name="private">
333+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
334+<p>This bug report should be private</p>
335+<p>Private bug reports are visible only to their subscribers.</p>
336+
337+</wadl:doc>
338+
339+ </wadl:param>
340+ <wadl:param style="query" required="true"
341+ name="description">
342+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
343+<p>Description</p>
344+<dl class="rst-docutils">
345+<dt>A detailed description of the problem,</dt>
346+<dd>including the steps required to reproduce it.</dd>
347+</dl>
348+
349+</wadl:doc>
350+
351+ </wadl:param>
352+ </wadl:representation>
353+ </wadl:request>
354+ <wadl:response>
355+ <wadl:param name="Location" style="header">
356+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#bug"/>
357+ </wadl:param>
358+
359+ </wadl:response>
360+ </wadl:method>
361+ </wadl:resource_type>
362+
363+
364+
365+ <wadl:resource_type id="packagesets">
366+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
367+An interface for multiple package sets.
368+</wadl:doc>
369+ <wadl:method name="GET" id="packagesets-get">
370+ <wadl:response>
371+ <wadl:representation
372+ href="https://api.edge.launchpad.net/beta/#packageset-page"/>
373+ <wadl:representation
374+ mediaType="application/vd.sun.wadl+xml"
375+ id="packagesets-wadl"/>
376+ </wadl:response>
377+ </wadl:method>
378+
379+ <wadl:method id="packagesets-setsIncludingSource"
380+ name="GET">
381+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
382+<p>Get the package sets that include this source package.</p>
383+<p>Return all package sets that directly or indirectly include the
384+given source package name.</p>
385+<table class="rst-docutils field-list" frame="void" rules="none">
386+<col class="field-name" />
387+<col class="field-body" />
388+<tbody valign="top">
389+<tr class="rst-field"><th class="rst-field-name" colspan="2">param sourcepackagename:</th></tr>
390+<tr><td>&nbsp;</td><td class="rst-field-body">the included source package name; can be
391+either a string or a ISourcePackageName.</td>
392+</tr>
393+<tr class="rst-field"><th class="rst-field-name" colspan="2">param direct_inclusion:</th></tr>
394+<tr><td>&nbsp;</td><td class="rst-field-body">if this flag is set to True, then only
395+package sets that directly include this source package name will
396+be considered.</td>
397+</tr>
398+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises NoSuchSourcePackageName:</th></tr>
399+<tr><td>&nbsp;</td><td class="rst-field-body">if a source package with the given
400+name cannot be found.</td>
401+</tr>
402+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">A (potentially empty) sequence of IPackageset instances.</td>
403+</tr>
404+</tbody>
405+</table>
406+
407+</wadl:doc>
408+ <wadl:request>
409+
410+ <wadl:param style="query" name="ws.op"
411+ required="true"
412+ fixed="setsIncludingSource">
413+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
414+ </wadl:param>
415+ <wadl:param style="query" required="true"
416+ name="sourcepackagename">
417+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
418+Source package name
419+</wadl:doc>
420+
421+ </wadl:param>
422+ <wadl:param style="query" required="false"
423+ name="direct_inclusion">
424+
425+
426+ </wadl:param>
427+
428+ </wadl:request>
429+ <wadl:response>
430+
431+ <wadl:representation
432+ href="https://api.edge.launchpad.net/beta/#packageset-page"/>
433+ </wadl:response>
434+ </wadl:method>
435+ <wadl:method id="packagesets-getByName" name="GET">
436+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
437+<p>Return the single package set with the given name (if any).</p>
438+<table class="rst-docutils field-list" frame="void" rules="none">
439+<col class="field-name" />
440+<col class="field-body" />
441+<tbody valign="top">
442+<tr class="rst-field"><th class="rst-field-name">param name:</th><td class="rst-field-body">the name of the package set sought.</td>
443+</tr>
444+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">An IPackageset instance or None.</td>
445+</tr>
446+</tbody>
447+</table>
448+
449+</wadl:doc>
450+ <wadl:request>
451+
452+ <wadl:param style="query" name="ws.op"
453+ required="true" fixed="getByName">
454+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
455+ </wadl:param>
456+ <wadl:param style="query" required="true"
457+ name="name">
458+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
459+Package set name
460+</wadl:doc>
461+
462+ </wadl:param>
463+
464+ </wadl:request>
465+ <wadl:response>
466+
467+ <wadl:representation
468+ href="https://api.edge.launchpad.net/beta/#packageset-full"/>
469+ </wadl:response>
470+ </wadl:method>
471+ <wadl:method id="packagesets-new" name="POST">
472+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
473+<p>Create a new package set.</p>
474+<table class="rst-docutils field-list" frame="void" rules="none">
475+<col class="field-name" />
476+<col class="field-body" />
477+<tbody valign="top">
478+<tr class="rst-field"><th class="rst-field-name">param name:</th><td class="rst-field-body">the name of the package set to be created.</td>
479+</tr>
480+<tr class="rst-field"><th class="rst-field-name" colspan="2">param description:</th></tr>
481+<tr><td>&nbsp;</td><td class="rst-field-body">the description for the package set to be created.</td>
482+</tr>
483+<tr class="rst-field"><th class="rst-field-name">param owner:</th><td class="rst-field-body">the owner of the package set to be created.</td>
484+</tr>
485+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">a newly created IPackageset.</td>
486+</tr>
487+</tbody>
488+</table>
489+
490+</wadl:doc>
491+ <wadl:request>
492+ <wadl:representation
493+ mediaType="application/x-www-form-urlencoded">
494+ <wadl:param style="query" name="ws.op"
495+ required="true" fixed="new">
496+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
497+ </wadl:param>
498+ <wadl:param style="query" required="true"
499+ name="owner">
500+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
501+<p>Person</p>
502+<p>The person who owns the package set at hand.</p>
503+
504+</wadl:doc>
505+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
506+ </wadl:param>
507+ <wadl:param style="query" required="true"
508+ name="description">
509+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
510+Package set description
511+</wadl:doc>
512+
513+ </wadl:param>
514+ <wadl:param style="query" required="true"
515+ name="name">
516+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
517+Valid package set name
518+</wadl:doc>
519+
520+ </wadl:param>
521+ </wadl:representation>
522+ </wadl:request>
523+ <wadl:response>
524+ <wadl:param name="Location" style="header">
525+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#packageset"/>
526+ </wadl:param>
527+
528+ </wadl:response>
529+ </wadl:method>
530+ </wadl:resource_type>
531+
532+
533+
534+ <wadl:resource_type id="people">
535+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
536+The set of Persons.
537+</wadl:doc>
538+ <wadl:method name="GET" id="people-get">
539+ <wadl:response>
540+ <wadl:representation
541+ href="https://api.edge.launchpad.net/beta/#person-page"/>
542+ <wadl:representation
543+ mediaType="application/vd.sun.wadl+xml" id="people-wadl"/>
544+ </wadl:response>
545+ </wadl:method>
546+
547+ <wadl:method id="people-findPerson" name="GET">
548+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
549+<p>Return all non-merged Persons with at least one email address whose
550+name, displayname or email address match &lt;text&gt;.</p>
551+<p>If text is an empty string, all persons with at least one email
552+address will be returned.</p>
553+<p>The results will be ordered using the default ordering specified in
554+Person._defaultOrder.</p>
555+<p>If exclude_inactive_accounts is True, any accounts whose
556+account_status is any of INACTIVE_ACCOUNT_STATUSES will not be in the
557+returned set.</p>
558+<p>If must_have_email is True, only people with one or more email
559+addresses are returned.</p>
560+<p>While we don't have Full Text Indexes in the emailaddress table, we'll
561+be trying to match the text only against the beginning of an email
562+address.</p>
563+
564+</wadl:doc>
565+ <wadl:request>
566+
567+ <wadl:param style="query" name="ws.op"
568+ required="true" fixed="findPerson">
569+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
570+ </wadl:param>
571+ <wadl:param style="query" required="true"
572+ name="text">
573+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
574+Search text
575+</wadl:doc>
576+
577+ </wadl:param>
578+
579+ </wadl:request>
580+ <wadl:response>
581+
582+ <wadl:representation
583+ href="https://api.edge.launchpad.net/beta/#person-page"/>
584+ </wadl:response>
585+ </wadl:method>
586+ <wadl:method id="people-getByEmail" name="GET">
587+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
588+<p>Return the person with the given email address.</p>
589+<p>Return None if there is no person with the given email address.</p>
590+
591+</wadl:doc>
592+ <wadl:request>
593+
594+ <wadl:param style="query" name="ws.op"
595+ required="true" fixed="getByEmail">
596+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
597+ </wadl:param>
598+ <wadl:param style="query" required="true"
599+ name="email">
600+
601+
602+ </wadl:param>
603+
604+ </wadl:request>
605+ <wadl:response>
606+
607+ <wadl:representation
608+ href="https://api.edge.launchpad.net/beta/#person-full"/>
609+ </wadl:response>
610+ </wadl:method>
611+ <wadl:method id="people-find" name="GET">
612+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
613+<p>Return all non-merged Persons and Teams whose name, displayname or
614+email address match &lt;text&gt;.</p>
615+<p>The results will be ordered using the default ordering specified in
616+Person._defaultOrder.</p>
617+<p>While we don't have Full Text Indexes in the emailaddress table, we'll
618+be trying to match the text only against the beginning of an email
619+address.</p>
620+
621+</wadl:doc>
622+ <wadl:request>
623+
624+ <wadl:param style="query" name="ws.op"
625+ required="true" fixed="find">
626+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
627+ </wadl:param>
628+ <wadl:param style="query" required="true"
629+ name="text">
630+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
631+Search text
632+</wadl:doc>
633+
634+ </wadl:param>
635+
636+ </wadl:request>
637+ <wadl:response>
638+
639+ <wadl:representation
640+ href="https://api.edge.launchpad.net/beta/#person-page"/>
641+ </wadl:response>
642+ </wadl:method>
643+ <wadl:method id="people-findTeam" name="GET">
644+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
645+<p>Return all Teams whose name, displayname or email address
646+match &lt;text&gt;.</p>
647+<p>The results will be ordered using the default ordering specified in
648+Person._defaultOrder.</p>
649+<p>While we don't have Full Text Indexes in the emailaddress table, we'll
650+be trying to match the text only against the beginning of an email
651+address.</p>
652+
653+</wadl:doc>
654+ <wadl:request>
655+
656+ <wadl:param style="query" name="ws.op"
657+ required="true" fixed="findTeam">
658+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
659+ </wadl:param>
660+ <wadl:param style="query" required="true"
661+ name="text">
662+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
663+Search text
664+</wadl:doc>
665+
666+ </wadl:param>
667+
668+ </wadl:request>
669+ <wadl:response>
670+
671+ <wadl:representation
672+ href="https://api.edge.launchpad.net/beta/#person-page"/>
673+ </wadl:response>
674+ </wadl:method>
675+ <wadl:method id="people-newTeam" name="POST">
676+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
677+Create and return a new Team with given arguments.
678+</wadl:doc>
679+ <wadl:request>
680+ <wadl:representation
681+ mediaType="application/x-www-form-urlencoded">
682+ <wadl:param style="query" name="ws.op"
683+ required="true" fixed="newTeam">
684+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
685+ </wadl:param>
686+ <wadl:param style="query" required="true"
687+ name="display_name">
688+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
689+<p>Display Name</p>
690+<p>Your name as you would like it displayed throughout Launchpad. Most people use their full name here.</p>
691+
692+</wadl:doc>
693+
694+ </wadl:param>
695+ <wadl:param style="query" required="true"
696+ name="name">
697+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
698+<p>Name</p>
699+<p>A short unique name, beginning with a lower-case letter or number, and containing only letters, numbers, dots, hyphens, or plus signs.</p>
700+
701+</wadl:doc>
702+
703+ </wadl:param>
704+ <wadl:param style="query" required="false"
705+ name="default_membership_period">
706+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
707+<p>Subscription period</p>
708+<p>Number of days a new subscription lasts before expiring. You can customize the length of an individual subscription when approving it. Leave this empty or set to 0 for subscriptions to never expire.</p>
709+
710+</wadl:doc>
711+
712+ </wadl:param>
713+ <wadl:param style="query" required="false"
714+ name="team_description">
715+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
716+<p>Team Description</p>
717+<p>Include information on how to get involved with development. Use plain text; URLs will be linkified.</p>
718+
719+</wadl:doc>
720+
721+ </wadl:param>
722+ <wadl:param style="query" required="false"
723+ name="default_renewal_period">
724+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
725+<p>Renewal period</p>
726+<p>Number of days a subscription lasts after being renewed. You can customize the lengths of individual renewals, but this is what's used for auto-renewed and user-renewed memberships.</p>
727+
728+</wadl:doc>
729+
730+ </wadl:param>
731+ <wadl:param style="query" required="false"
732+ name="subscription_policy">
733+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
734+Subscription policy
735+</wadl:doc>
736+
737+ <wadl:option value="Moderated Team"/>
738+ <wadl:option value="Open Team"/>
739+ <wadl:option value="Restricted Team"/>
740+ </wadl:param>
741+ </wadl:representation>
742+ </wadl:request>
743+ <wadl:response>
744+ <wadl:param name="Location" style="header">
745+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#team"/>
746+ </wadl:param>
747+
748+ </wadl:response>
749+ </wadl:method>
750+ </wadl:resource_type>
751+
752+
753+
754+ <wadl:resource_type id="projects">
755+
756+ <wadl:method name="GET" id="projects-get">
757+ <wadl:response>
758+ <wadl:representation
759+ href="https://api.edge.launchpad.net/beta/#project-page"/>
760+ <wadl:representation
761+ mediaType="application/vd.sun.wadl+xml"
762+ id="projects-wadl"/>
763+ </wadl:response>
764+ </wadl:method>
765+
766+ <wadl:method id="projects-search" name="GET">
767+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
768+Search through the Registry database for products that match the
769+query terms. text is a piece of text in the title / summary /
770+description fields of product. soyuz, bazaar, malone etc are
771+hints as to whether the search should be limited to products
772+that are active in those Launchpad applications.
773+</wadl:doc>
774+ <wadl:request>
775+
776+ <wadl:param style="query" name="ws.op"
777+ required="true" fixed="search">
778+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
779+ </wadl:param>
780+ <wadl:param style="query" required="false"
781+ name="text">
782+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
783+Search text
784+</wadl:doc>
785+
786+ </wadl:param>
787+
788+ </wadl:request>
789+ <wadl:response>
790+
791+ <wadl:representation
792+ href="https://api.edge.launchpad.net/beta/#project-page"/>
793+ </wadl:response>
794+ </wadl:method>
795+ <wadl:method id="projects-licensing_search" name="GET">
796+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
797+Return an iterator over products that need to be reviewed.
798+</wadl:doc>
799+ <wadl:request>
800+
801+ <wadl:param style="query" name="ws.op"
802+ required="true"
803+ fixed="licensing_search">
804+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
805+ </wadl:param>
806+ <wadl:param style="query" required="false"
807+ name="license_reviewed">
808+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
809+Is the project license reviewed
810+</wadl:doc>
811+
812+ </wadl:param>
813+ <wadl:param style="query" required="false"
814+ name="license_info_is_empty">
815+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
816+License info is empty
817+</wadl:doc>
818+
819+ </wadl:param>
820+ <wadl:param style="query" required="false"
821+ name="search_text">
822+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
823+Search text
824+</wadl:doc>
825+
826+ </wadl:param>
827+ <wadl:param style="query" required="false"
828+ name="has_zero_licenses">
829+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
830+Has zero licenses
831+</wadl:doc>
832+
833+ </wadl:param>
834+ <wadl:param style="query" required="false"
835+ type="xsd:date"
836+ name="subscription_expires_after">
837+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
838+Subscription expires after
839+</wadl:doc>
840+
841+ </wadl:param>
842+ <wadl:param style="query" required="false"
843+ name="active">
844+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
845+Is the project active
846+</wadl:doc>
847+
848+ </wadl:param>
849+ <wadl:param style="query" required="false"
850+ type="xsd:date"
851+ name="subscription_modified_after">
852+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
853+Subscription modified after
854+</wadl:doc>
855+
856+ </wadl:param>
857+ <wadl:param style="query" required="false"
858+ type="xsd:date" name="created_after">
859+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
860+Created after date
861+</wadl:doc>
862+
863+ </wadl:param>
864+ <wadl:param style="query" required="false"
865+ name="licenses">
866+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
867+Licenses
868+</wadl:doc>
869+
870+ </wadl:param>
871+ <wadl:param style="query" required="false"
872+ type="xsd:date"
873+ name="subscription_expires_before">
874+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
875+Subscription expired before
876+</wadl:doc>
877+
878+ </wadl:param>
879+ <wadl:param style="query" required="false"
880+ type="xsd:date"
881+ name="created_before">
882+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
883+Created before date
884+</wadl:doc>
885+
886+ </wadl:param>
887+ <wadl:param style="query" required="false"
888+ type="xsd:date"
889+ name="subscription_modified_before">
890+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
891+Subscription modified before
892+</wadl:doc>
893+
894+ </wadl:param>
895+
896+ </wadl:request>
897+ <wadl:response>
898+
899+ <wadl:representation
900+ href="https://api.edge.launchpad.net/beta/#project-page"/>
901+ </wadl:response>
902+ </wadl:method>
903+ <wadl:method id="projects-latest" name="GET">
904+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
905+<p>Return the latest projects registered in Launchpad.</p>
906+<p>If the quantity is not specified or is a value that is not 'None'
907+then the set of projects returned is limited to that value (the
908+default quantity is 5). If quantity is 'None' then all projects are
909+returned. For the web service it is not possible to specify the
910+quantity, so all projects are returned, latest first.</p>
911+
912+</wadl:doc>
913+ <wadl:request>
914+
915+ <wadl:param style="query" name="ws.op"
916+ required="true" fixed="latest">
917+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
918+ </wadl:param>
919+
920+ </wadl:request>
921+ <wadl:response>
922+
923+ <wadl:representation
924+ href="https://api.edge.launchpad.net/beta/#project-page"/>
925+ </wadl:response>
926+ </wadl:method>
927+ <wadl:method id="projects-new_project" name="POST">
928+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
929+<p>Create and return a brand new Product.</p>
930+<p>See IProduct for a description of the parameters.</p>
931+
932+</wadl:doc>
933+ <wadl:request>
934+ <wadl:representation
935+ mediaType="application/x-www-form-urlencoded">
936+ <wadl:param style="query" name="ws.op"
937+ required="true" fixed="new_project">
938+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
939+ </wadl:param>
940+ <wadl:param style="query" required="false"
941+ name="wiki_url">
942+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
943+<p>Wiki URL</p>
944+<dl class="rst-docutils">
945+<dt>The full URL of this project's wiki, if it has</dt>
946+<dd>one. Please include the <a class="rst-reference external" href="http://" target="_top">http://</a></dd>
947+</dl>
948+
949+</wadl:doc>
950+
951+ </wadl:param>
952+ <wadl:param style="query" required="false"
953+ name="download_url">
954+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
955+<p>Download URL</p>
956+<dl class="rst-docutils">
957+<dt>The full URL where downloads for this project</dt>
958+<dd>are located, if available. Please include the <a class="rst-reference external" href="http://" target="_top">http://</a></dd>
959+</dl>
960+
961+</wadl:doc>
962+
963+ </wadl:param>
964+ <wadl:param style="query" required="false"
965+ name="license_reviewed">
966+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
967+<p>Project reviewed</p>
968+<p>Whether or not this project has been reviewed. If you looked at the project and how it uses Launchpad, you reviewed it.</p>
969+
970+</wadl:doc>
971+
972+ </wadl:param>
973+ <wadl:param style="query" required="true"
974+ name="display_name">
975+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
976+<p>Display Name</p>
977+<dl class="rst-docutils">
978+<dt>The name of the project as it would appear in a</dt>
979+<dd>paragraph.</dd>
980+</dl>
981+
982+</wadl:doc>
983+
984+ </wadl:param>
985+ <wadl:param style="query" required="false"
986+ name="description">
987+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
988+<p>Description</p>
989+<dl class="rst-docutils">
990+<dt>Include information on how to get involved with</dt>
991+<dd>development. Don't repeat anything from the Summary.</dd>
992+</dl>
993+
994+</wadl:doc>
995+
996+ </wadl:param>
997+ <wadl:param style="query" required="true"
998+ name="title">
999+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1000+<p>Title</p>
1001+<p>The project title. Should be just a few words.</p>
1002+
1003+</wadl:doc>
1004+
1005+ </wadl:param>
1006+ <wadl:param style="query" required="true"
1007+ name="summary">
1008+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1009+<p>Summary</p>
1010+<p>The summary should be a single short paragraph.</p>
1011+
1012+</wadl:doc>
1013+
1014+ </wadl:param>
1015+ <wadl:param style="query" required="false"
1016+ name="project_group">
1017+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1018+<p>Part of</p>
1019+<p>Super-project. In Launchpad, we can setup a special &quot;project group&quot; that is an overarching initiative that includes several related projects. For example, the Mozilla Project produces Firefox, Thunderbird and Gecko. This information is used to group those projects in a coherent way. If you make this project part of a group, the group preferences and decisions around bug tracking, translation and security policy will apply to this project.</p>
1020+
1021+</wadl:doc>
1022+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#project_group"/>
1023+ </wadl:param>
1024+ <wadl:param style="query" required="false"
1025+ name="licenses">
1026+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1027+Licenses
1028+</wadl:doc>
1029+
1030+ </wadl:param>
1031+ <wadl:param style="query" required="false"
1032+ name="freshmeat_project">
1033+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1034+<p>Freshmeat Project</p>
1035+<dl class="rst-docutils">
1036+<dt>The Freshmeat project name for</dt>
1037+<dd>this project, if it is in freshmeat.</dd>
1038+</dl>
1039+
1040+</wadl:doc>
1041+
1042+ </wadl:param>
1043+ <wadl:param style="query" required="false"
1044+ name="sourceforge_project">
1045+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1046+<p>Sourceforge Project</p>
1047+<dl class="rst-docutils">
1048+<dt>The SourceForge project name for</dt>
1049+<dd>this project, if it is in sourceforge.</dd>
1050+</dl>
1051+
1052+</wadl:doc>
1053+
1054+ </wadl:param>
1055+ <wadl:param style="query" required="false"
1056+ name="programming_lang">
1057+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1058+<p>Programming Languages</p>
1059+<dl class="rst-docutils">
1060+<dt>A comma delimited list of programming</dt>
1061+<dd>languages used for this project.</dd>
1062+</dl>
1063+
1064+</wadl:doc>
1065+
1066+ </wadl:param>
1067+ <wadl:param style="query" required="false"
1068+ name="screenshots_url">
1069+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1070+<p>Screenshots URL</p>
1071+<dl class="rst-docutils">
1072+<dt>The full URL for screenshots of this project,</dt>
1073+<dd>if available. Please include the <a class="rst-reference external" href="http://" target="_top">http://</a></dd>
1074+</dl>
1075+
1076+</wadl:doc>
1077+
1078+ </wadl:param>
1079+ <wadl:param style="query" required="false"
1080+ name="license_info">
1081+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1082+<p>Description of additional licenses</p>
1083+<p>Description of licenses that do not appear in the list above.</p>
1084+
1085+</wadl:doc>
1086+
1087+ </wadl:param>
1088+ <wadl:param style="query" required="false"
1089+ name="home_page_url">
1090+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1091+<p>Homepage URL</p>
1092+<dl class="rst-docutils">
1093+<dt>The project home page. Please include</dt>
1094+<dd>the <a class="rst-reference external" href="http://" target="_top">http://</a></dd>
1095+</dl>
1096+
1097+</wadl:doc>
1098+
1099+ </wadl:param>
1100+ <wadl:param style="query" required="false"
1101+ name="registrant">
1102+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1103+<p>Registrant</p>
1104+<p>This person registered the project in Launchpad.</p>
1105+
1106+</wadl:doc>
1107+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
1108+ </wadl:param>
1109+ <wadl:param style="query" required="true"
1110+ name="name">
1111+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1112+<p>Name</p>
1113+<p>At least one lowercase letter or number, followed by letters, numbers, dots, hyphens or pluses. Keep this name short; it is used in URLs as shown above.</p>
1114+
1115+</wadl:doc>
1116+
1117+ </wadl:param>
1118+ </wadl:representation>
1119+ </wadl:request>
1120+ <wadl:response>
1121+ <wadl:param name="Location" style="header">
1122+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#project"/>
1123+ </wadl:param>
1124+
1125+ </wadl:response>
1126+ </wadl:method>
1127+ </wadl:resource_type>
1128+
1129+
1130+
1131+ <wadl:resource_type id="project_groups">
1132+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1133+The collection of projects.
1134+</wadl:doc>
1135+ <wadl:method name="GET" id="project_groups-get">
1136+ <wadl:response>
1137+ <wadl:representation
1138+ href="https://api.edge.launchpad.net/beta/#project_group-page"/>
1139+ <wadl:representation
1140+ mediaType="application/vd.sun.wadl+xml"
1141+ id="project_groups-wadl"/>
1142+ </wadl:response>
1143+ </wadl:method>
1144+
1145+ <wadl:method id="project_groups-search" name="GET">
1146+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1147+Search through the Registry database for projects that match the
1148+query terms. text is a piece of text in the title / summary /
1149+description fields of project (and possibly product). soyuz,
1150+bazaar, malone etc are hints as to whether the search should
1151+be limited to projects that are active in those Launchpad
1152+applications.
1153+</wadl:doc>
1154+ <wadl:request>
1155+
1156+ <wadl:param style="query" name="ws.op"
1157+ required="true" fixed="search">
1158+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
1159+ </wadl:param>
1160+ <wadl:param style="query" required="false"
1161+ name="text">
1162+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1163+Search text
1164+</wadl:doc>
1165+
1166+ </wadl:param>
1167+
1168+ </wadl:request>
1169+ <wadl:response>
1170+
1171+ <wadl:representation
1172+ href="https://api.edge.launchpad.net/beta/#project_group-page"/>
1173+ </wadl:response>
1174+ </wadl:method>
1175+ </wadl:resource_type>
1176+
1177+
1178+
1179+ <wadl:resource_type id="translation_import_queue_entries">
1180+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1181+A set of files to be imported into Rosetta.
1182+</wadl:doc>
1183+ <wadl:method name="GET"
1184+ id="translation_import_queue_entries-get">
1185+ <wadl:response>
1186+ <wadl:representation
1187+ href="https://api.edge.launchpad.net/beta/#translation_import_queue_entry-page"/>
1188+ <wadl:representation
1189+ mediaType="application/vd.sun.wadl+xml"
1190+ id="translation_import_queue_entries-wadl"/>
1191+ </wadl:response>
1192+ </wadl:method>
1193+
1194+ <wadl:method id="translation_import_queue_entries-getAllEntries"
1195+ name="GET">
1196+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1197+<p>Return all entries this import queue has.</p>
1198+<table class="rst-docutils field-list" frame="void" rules="none">
1199+<col class="field-name" />
1200+<col class="field-body" />
1201+<tbody valign="top">
1202+<tr class="rst-field"><th class="rst-field-name">arg target:</th><td class="rst-field-body">IPerson, IProduct, IProductSeries, IDistribution,
1203+IDistroSeries or ISourcePackage the import entries are attached to
1204+or None to get all entries available.</td>
1205+</tr>
1206+<tr class="rst-field"><th class="rst-field-name" colspan="2">arg import_status:</th></tr>
1207+<tr><td>&nbsp;</td><td class="rst-field-body">RosettaImportStatus entry.</td>
1208+</tr>
1209+<tr class="rst-field"><th class="rst-field-name" colspan="2">arg file_extensions:</th></tr>
1210+<tr><td>&nbsp;</td><td class="rst-field-body">Sequence of filename suffixes to match, usually
1211+'po' or 'pot'.</td>
1212+</tr>
1213+</tbody>
1214+</table>
1215+<p>If any of target, status or file_extension are given, the returned
1216+entries are filtered based on those values.</p>
1217+
1218+</wadl:doc>
1219+ <wadl:request>
1220+
1221+ <wadl:param style="query" name="ws.op"
1222+ required="true"
1223+ fixed="getAllEntries">
1224+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
1225+ </wadl:param>
1226+ <wadl:param style="query" required="false"
1227+ name="import_status">
1228+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1229+The status of the import.
1230+</wadl:doc>
1231+
1232+ </wadl:param>
1233+
1234+ </wadl:request>
1235+ <wadl:response>
1236+
1237+ <wadl:representation
1238+ href="https://api.edge.launchpad.net/beta/#translation_import_queue_entry-page"/>
1239+ </wadl:response>
1240+ </wadl:method>
1241+ <wadl:method id="translation_import_queue_entries-getRequestTargets"
1242+ name="GET">
1243+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1244+<p>List Product`s and `DistroSeries with pending imports.</p>
1245+<table class="rst-docutils field-list" frame="void" rules="none">
1246+<col class="field-name" />
1247+<col class="field-body" />
1248+<tbody valign="top">
1249+<tr class="rst-field"><th class="rst-field-name">arg status:</th><td class="rst-field-body">Filter by RosettaImportStatus.</td>
1250+</tr>
1251+</tbody>
1252+</table>
1253+<p>All returned items will implement IHasTranslationImports.</p>
1254+
1255+</wadl:doc>
1256+ <wadl:request>
1257+
1258+ <wadl:param style="query" name="ws.op"
1259+ required="true"
1260+ fixed="getRequestTargets">
1261+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
1262+ </wadl:param>
1263+ <wadl:param style="query" required="false"
1264+ name="status">
1265+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1266+The status of the import.
1267+</wadl:doc>
1268+
1269+ </wadl:param>
1270+
1271+ </wadl:request>
1272+ <wadl:response>
1273+
1274+ <wadl:representation
1275+ href="https://api.edge.launchpad.net/beta/#object_with_translation_imports-page"/>
1276+ </wadl:response>
1277+ </wadl:method>
1278+ <wadl:method id="translation_import_queue_entries-getFirstEntryToImport"
1279+ name="GET">
1280+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1281+<p>Return the first entry of the queue ready to be imported.</p>
1282+<table class="rst-docutils field-list" frame="void" rules="none">
1283+<col class="field-name" />
1284+<col class="field-body" />
1285+<tbody valign="top">
1286+<tr class="rst-field"><th class="rst-field-name">param target:</th><td class="rst-field-body">IPerson, IProduct, IProductSeries, IDistribution,
1287+IDistroSeries or ISourcePackage the import entries are attached to
1288+or None to get all entries available.</td>
1289+</tr>
1290+</tbody>
1291+</table>
1292+
1293+</wadl:doc>
1294+ <wadl:request>
1295+
1296+ <wadl:param style="query" name="ws.op"
1297+ required="true"
1298+ fixed="getFirstEntryToImport">
1299+ <wadl:doc>The name of the operation being invoked.</wadl:doc>
1300+ </wadl:param>
1301+ <wadl:param style="query" required="false"
1302+ name="target">
1303+
1304+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#object_with_translation_imports"/>
1305+ </wadl:param>
1306+
1307+ </wadl:request>
1308+ <wadl:response>
1309+
1310+ <wadl:representation
1311+ href="https://api.edge.launchpad.net/beta/#translation_import_queue_entry-full"/>
1312+ </wadl:response>
1313+ </wadl:method>
1314+ </wadl:resource_type>
1315+
1316+
1317+ <!--End resource_type definitions for collection resources.-->
1318+
1319+ <!--Begin representation and resource_type definitions for entry
1320+ resources and the collections that contain them. -->
1321+
1322+ <wadl:resource_type id="archive_dependency">
1323+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1324+ArchiveDependency interface.
1325+</wadl:doc>
1326+ <wadl:method name="GET" id="archive_dependency-get">
1327+ <wadl:response>
1328+ <wadl:representation
1329+ href="https://api.edge.launchpad.net/beta/#archive_dependency-full"/>
1330+ <wadl:representation
1331+ mediaType="application/xhtml+xml"
1332+ id="archive_dependency-xhtml"/>
1333+ <wadl:representation
1334+ mediaType="application/vd.sun.wadl+xml"
1335+ id="archive_dependency-wadl"/>
1336+ </wadl:response>
1337+ </wadl:method>
1338+
1339+ <wadl:method name="PUT" id="archive_dependency-put">
1340+ <wadl:request>
1341+ <wadl:representation
1342+ href="https://api.edge.launchpad.net/beta/#archive_dependency-full"/>
1343+ </wadl:request>
1344+ </wadl:method>
1345+
1346+ <wadl:method name="PATCH"
1347+ id="archive_dependency-patch">
1348+ <wadl:request>
1349+ <wadl:representation
1350+ href="https://api.edge.launchpad.net/beta/#archive_dependency-diff"/>
1351+ </wadl:request>
1352+ </wadl:method>
1353+
1354+
1355+
1356+ </wadl:resource_type>
1357+
1358+
1359+ <wadl:representation mediaType="application/json"
1360+ id="archive_dependency-full">
1361+ <wadl:param style="plain" name="self_link" path="$['self_link']">
1362+ <wadl:doc>The canonical link to this resource.</wadl:doc>
1363+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_dependency"/>
1364+ </wadl:param>
1365+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
1366+ <wadl:doc>
1367+ The link to the WADL description of this resource.
1368+ </wadl:doc>
1369+ <wadl:link/>
1370+ </wadl:param>
1371+ <wadl:param style="plain" name="http_etag" path="$['http_etag']">
1372+ <wadl:doc>
1373+ The value of the HTTP ETag for this resource.
1374+ </wadl:doc>
1375+ </wadl:param>
1376+ <wadl:param style="plain" required="true"
1377+ path="$['title']" name="title">
1378+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1379+Archive dependency title.
1380+</wadl:doc>
1381+
1382+ </wadl:param>
1383+ <wadl:param style="plain" required="true"
1384+ path="$['pocket']" name="pocket">
1385+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1386+Pocket
1387+</wadl:doc>
1388+
1389+ <wadl:option value="Release"/>
1390+ <wadl:option value="Security"/>
1391+ <wadl:option value="Updates"/>
1392+ <wadl:option value="Proposed"/>
1393+ <wadl:option value="Backports"/>
1394+ </wadl:param>
1395+ <wadl:param style="plain" required="true"
1396+ path="$['dependency_link']"
1397+ name="dependency_link">
1398+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1399+The archive set as a dependency.
1400+</wadl:doc>
1401+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
1402+ </wadl:param>
1403+ <wadl:param style="plain" required="true"
1404+ path="$['date_created']"
1405+ type="xsd:dateTime" name="date_created">
1406+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1407+Instant when the dependency was created.
1408+</wadl:doc>
1409+
1410+ </wadl:param>
1411+ <wadl:param style="plain" required="true"
1412+ path="$['archive_link']"
1413+ name="archive_link">
1414+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1415+<p>Target archive</p>
1416+<p>The archive affected by this dependecy.</p>
1417+
1418+</wadl:doc>
1419+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
1420+ </wadl:param>
1421+ <wadl:param style="plain" required="true"
1422+ path="$['component_name']"
1423+ name="component_name">
1424+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1425+Component name
1426+</wadl:doc>
1427+
1428+ </wadl:param>
1429+ </wadl:representation>
1430+
1431+ <wadl:representation mediaType="application/json"
1432+ id="archive_dependency-diff">
1433+ </wadl:representation>
1434+
1435+ <!--Collection page for this type of entry-->
1436+ <wadl:resource_type id="archive_dependency-page-resource">
1437+ <wadl:method name="GET"
1438+ id="archive_dependency-page-resource-get">
1439+ <wadl:response>
1440+ <wadl:representation
1441+ href="#archive_dependency-page"/>
1442+ </wadl:response>
1443+ </wadl:method>
1444+ </wadl:resource_type>
1445+
1446+ <wadl:representation mediaType="application/json"
1447+ id="archive_dependency-page">
1448+
1449+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
1450+ <wadl:link/>
1451+ </wadl:param>
1452+
1453+ <wadl:param style="plain" name="total_size" path="$['total_size']" required="true"/>
1454+
1455+ <wadl:param style="plain" name="start" path="$['start']" required="true"/>
1456+
1457+ <wadl:param style="plain" name="next_collection_link" path="$['next_collection_link']">
1458+ <wadl:link resource_type="#archive_dependency-page-resource"/>
1459+ </wadl:param>
1460+
1461+ <wadl:param style="plain" name="prev_collection_link" path="$['prev_collection_link']">
1462+ <wadl:link resource_type="#archive_dependency-page-resource"/>
1463+ </wadl:param>
1464+
1465+ <wadl:param style="plain" name="entries" path="$['entries']" required="true"/>
1466+
1467+ <wadl:param style="plain" name="entry_links" path="$['entries'][*]['self_link']">
1468+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_dependency"/>
1469+ </wadl:param>
1470+ </wadl:representation>
1471+
1472+
1473+
1474+ <wadl:resource_type id="archive_permission">
1475+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1476+The interface for ArchivePermission.
1477+</wadl:doc>
1478+ <wadl:method name="GET" id="archive_permission-get">
1479+ <wadl:response>
1480+ <wadl:representation
1481+ href="https://api.edge.launchpad.net/beta/#archive_permission-full"/>
1482+ <wadl:representation
1483+ mediaType="application/xhtml+xml"
1484+ id="archive_permission-xhtml"/>
1485+ <wadl:representation
1486+ mediaType="application/vd.sun.wadl+xml"
1487+ id="archive_permission-wadl"/>
1488+ </wadl:response>
1489+ </wadl:method>
1490+
1491+ <wadl:method name="PUT" id="archive_permission-put">
1492+ <wadl:request>
1493+ <wadl:representation
1494+ href="https://api.edge.launchpad.net/beta/#archive_permission-full"/>
1495+ </wadl:request>
1496+ </wadl:method>
1497+
1498+ <wadl:method name="PATCH"
1499+ id="archive_permission-patch">
1500+ <wadl:request>
1501+ <wadl:representation
1502+ href="https://api.edge.launchpad.net/beta/#archive_permission-diff"/>
1503+ </wadl:request>
1504+ </wadl:method>
1505+
1506+
1507+
1508+ </wadl:resource_type>
1509+
1510+
1511+ <wadl:representation mediaType="application/json"
1512+ id="archive_permission-full">
1513+ <wadl:param style="plain" name="self_link" path="$['self_link']">
1514+ <wadl:doc>The canonical link to this resource.</wadl:doc>
1515+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_permission"/>
1516+ </wadl:param>
1517+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
1518+ <wadl:doc>
1519+ The link to the WADL description of this resource.
1520+ </wadl:doc>
1521+ <wadl:link/>
1522+ </wadl:param>
1523+ <wadl:param style="plain" name="http_etag" path="$['http_etag']">
1524+ <wadl:doc>
1525+ The value of the HTTP ETag for this resource.
1526+ </wadl:doc>
1527+ </wadl:param>
1528+ <wadl:param style="plain" required="true"
1529+ path="$['permission']" name="permission">
1530+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1531+The permission type being granted.
1532+</wadl:doc>
1533+
1534+ </wadl:param>
1535+ <wadl:param style="plain" required="true"
1536+ path="$['source_package_name']"
1537+ name="source_package_name">
1538+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1539+Source Package Name
1540+</wadl:doc>
1541+
1542+ </wadl:param>
1543+ <wadl:param style="plain" required="true"
1544+ path="$['explicit']" name="explicit">
1545+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1546+<p>Explicit</p>
1547+<p>Set this flag for package sets with high-profile packages requiring specialist skills for proper handling.</p>
1548+
1549+</wadl:doc>
1550+
1551+ </wadl:param>
1552+ <wadl:param style="plain" required="true"
1553+ path="$['package_set_name']"
1554+ name="package_set_name">
1555+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1556+Package set name
1557+</wadl:doc>
1558+
1559+ </wadl:param>
1560+ <wadl:param style="plain" required="true"
1561+ path="$['person_link']" name="person_link">
1562+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1563+<p>Person</p>
1564+<p>The person or team being granted the permission.</p>
1565+
1566+</wadl:doc>
1567+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
1568+ </wadl:param>
1569+ <wadl:param style="plain" required="true"
1570+ path="$['date_created']"
1571+ type="xsd:dateTime" name="date_created">
1572+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1573+<p>Date Created</p>
1574+<p>The timestamp when the permission was created.</p>
1575+
1576+</wadl:doc>
1577+
1578+ </wadl:param>
1579+ <wadl:param style="plain" required="true"
1580+ path="$['archive_link']"
1581+ name="archive_link">
1582+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1583+<p>Archive</p>
1584+<p>The archive that this permission is for.</p>
1585+
1586+</wadl:doc>
1587+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
1588+ </wadl:param>
1589+ <wadl:param style="plain" required="true"
1590+ path="$['component_name']"
1591+ name="component_name">
1592+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1593+Component Name
1594+</wadl:doc>
1595+
1596+ </wadl:param>
1597+ </wadl:representation>
1598+
1599+ <wadl:representation mediaType="application/json"
1600+ id="archive_permission-diff">
1601+ <wadl:param style="plain" required="false"
1602+ path="$['permission']" name="permission">
1603+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1604+The permission type being granted.
1605+</wadl:doc>
1606+
1607+ </wadl:param>
1608+ <wadl:param style="plain" required="false"
1609+ path="$['source_package_name']"
1610+ name="source_package_name">
1611+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1612+Source Package Name
1613+</wadl:doc>
1614+
1615+ </wadl:param>
1616+ <wadl:param style="plain" required="false"
1617+ path="$['explicit']" name="explicit">
1618+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1619+<p>Explicit</p>
1620+<p>Set this flag for package sets with high-profile packages requiring specialist skills for proper handling.</p>
1621+
1622+</wadl:doc>
1623+
1624+ </wadl:param>
1625+ <wadl:param style="plain" required="false"
1626+ path="$['package_set_name']"
1627+ name="package_set_name">
1628+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1629+Package set name
1630+</wadl:doc>
1631+
1632+ </wadl:param>
1633+ <wadl:param style="plain" required="false"
1634+ path="$['person_link']" name="person_link">
1635+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1636+<p>Person</p>
1637+<p>The person or team being granted the permission.</p>
1638+
1639+</wadl:doc>
1640+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
1641+ </wadl:param>
1642+ <wadl:param style="plain" required="false"
1643+ path="$['date_created']"
1644+ type="xsd:dateTime" name="date_created">
1645+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1646+<p>Date Created</p>
1647+<p>The timestamp when the permission was created.</p>
1648+
1649+</wadl:doc>
1650+
1651+ </wadl:param>
1652+ <wadl:param style="plain" required="false"
1653+ path="$['archive_link']"
1654+ name="archive_link">
1655+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1656+<p>Archive</p>
1657+<p>The archive that this permission is for.</p>
1658+
1659+</wadl:doc>
1660+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
1661+ </wadl:param>
1662+ <wadl:param style="plain" required="false"
1663+ path="$['component_name']"
1664+ name="component_name">
1665+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1666+Component Name
1667+</wadl:doc>
1668+
1669+ </wadl:param>
1670+ </wadl:representation>
1671+
1672+ <!--Collection page for this type of entry-->
1673+ <wadl:resource_type id="archive_permission-page-resource">
1674+ <wadl:method name="GET"
1675+ id="archive_permission-page-resource-get">
1676+ <wadl:response>
1677+ <wadl:representation
1678+ href="#archive_permission-page"/>
1679+ </wadl:response>
1680+ </wadl:method>
1681+ </wadl:resource_type>
1682+
1683+ <wadl:representation mediaType="application/json"
1684+ id="archive_permission-page">
1685+
1686+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
1687+ <wadl:link/>
1688+ </wadl:param>
1689+
1690+ <wadl:param style="plain" name="total_size" path="$['total_size']" required="true"/>
1691+
1692+ <wadl:param style="plain" name="start" path="$['start']" required="true"/>
1693+
1694+ <wadl:param style="plain" name="next_collection_link" path="$['next_collection_link']">
1695+ <wadl:link resource_type="#archive_permission-page-resource"/>
1696+ </wadl:param>
1697+
1698+ <wadl:param style="plain" name="prev_collection_link" path="$['prev_collection_link']">
1699+ <wadl:link resource_type="#archive_permission-page-resource"/>
1700+ </wadl:param>
1701+
1702+ <wadl:param style="plain" name="entries" path="$['entries']" required="true"/>
1703+
1704+ <wadl:param style="plain" name="entry_links" path="$['entries'][*]['self_link']">
1705+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_permission"/>
1706+ </wadl:param>
1707+ </wadl:representation>
1708+
1709+
1710+
1711+ <wadl:resource_type id="archive_subscriber">
1712+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1713+An interface for archive subscribers.
1714+</wadl:doc>
1715+ <wadl:method name="GET" id="archive_subscriber-get">
1716+ <wadl:response>
1717+ <wadl:representation
1718+ href="https://api.edge.launchpad.net/beta/#archive_subscriber-full"/>
1719+ <wadl:representation
1720+ mediaType="application/xhtml+xml"
1721+ id="archive_subscriber-xhtml"/>
1722+ <wadl:representation
1723+ mediaType="application/vd.sun.wadl+xml"
1724+ id="archive_subscriber-wadl"/>
1725+ </wadl:response>
1726+ </wadl:method>
1727+
1728+ <wadl:method name="PUT" id="archive_subscriber-put">
1729+ <wadl:request>
1730+ <wadl:representation
1731+ href="https://api.edge.launchpad.net/beta/#archive_subscriber-full"/>
1732+ </wadl:request>
1733+ </wadl:method>
1734+
1735+ <wadl:method name="PATCH"
1736+ id="archive_subscriber-patch">
1737+ <wadl:request>
1738+ <wadl:representation
1739+ href="https://api.edge.launchpad.net/beta/#archive_subscriber-diff"/>
1740+ </wadl:request>
1741+ </wadl:method>
1742+
1743+
1744+
1745+ </wadl:resource_type>
1746+
1747+
1748+ <wadl:representation mediaType="application/json"
1749+ id="archive_subscriber-full">
1750+ <wadl:param style="plain" name="self_link" path="$['self_link']">
1751+ <wadl:doc>The canonical link to this resource.</wadl:doc>
1752+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_subscriber"/>
1753+ </wadl:param>
1754+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
1755+ <wadl:doc>
1756+ The link to the WADL description of this resource.
1757+ </wadl:doc>
1758+ <wadl:link/>
1759+ </wadl:param>
1760+ <wadl:param style="plain" name="http_etag" path="$['http_etag']">
1761+ <wadl:doc>
1762+ The value of the HTTP ETag for this resource.
1763+ </wadl:doc>
1764+ </wadl:param>
1765+ <wadl:param style="plain" required="true"
1766+ path="$['status']" name="status">
1767+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1768+<p>Status</p>
1769+<p>The status of this subscription.</p>
1770+
1771+</wadl:doc>
1772+
1773+ <wadl:option value="Active"/>
1774+ <wadl:option value="Expired"/>
1775+ <wadl:option value="Cancelled"/>
1776+ </wadl:param>
1777+ <wadl:param style="plain" required="true"
1778+ path="$['description']" name="description">
1779+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1780+<p>Description</p>
1781+<p>Free text describing this subscription.</p>
1782+
1783+</wadl:doc>
1784+
1785+ </wadl:param>
1786+ <wadl:param style="plain" required="true"
1787+ path="$['registrant_link']"
1788+ name="registrant_link">
1789+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1790+<p>Registrant</p>
1791+<p>The person who registered this subscription.</p>
1792+
1793+</wadl:doc>
1794+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
1795+ </wadl:param>
1796+ <wadl:param style="plain" required="true"
1797+ path="$['subscriber_link']"
1798+ name="subscriber_link">
1799+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1800+<p>Subscriber</p>
1801+<p>The person who is subscribed.</p>
1802+
1803+</wadl:doc>
1804+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
1805+ </wadl:param>
1806+ <wadl:param style="plain" required="true"
1807+ path="$['date_expires']"
1808+ type="xsd:dateTime" name="date_expires">
1809+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1810+<p>Date of Expiration</p>
1811+<p>The timestamp when the subscription will expire.</p>
1812+
1813+</wadl:doc>
1814+
1815+ </wadl:param>
1816+ <wadl:param style="plain" required="true"
1817+ path="$['date_created']"
1818+ type="xsd:dateTime" name="date_created">
1819+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1820+<p>Date Created</p>
1821+<p>The timestamp when the subscription was created.</p>
1822+
1823+</wadl:doc>
1824+
1825+ </wadl:param>
1826+ <wadl:param style="plain" required="true"
1827+ path="$['archive_link']"
1828+ name="archive_link">
1829+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1830+<p>Archive</p>
1831+<p>The archive for this subscription.</p>
1832+
1833+</wadl:doc>
1834+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
1835+ </wadl:param>
1836+ </wadl:representation>
1837+
1838+ <wadl:representation mediaType="application/json"
1839+ id="archive_subscriber-diff">
1840+ <wadl:param style="plain" required="false"
1841+ path="$['status']" name="status">
1842+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1843+<p>Status</p>
1844+<p>The status of this subscription.</p>
1845+
1846+</wadl:doc>
1847+
1848+ <wadl:option value="Active"/>
1849+ <wadl:option value="Expired"/>
1850+ <wadl:option value="Cancelled"/>
1851+ </wadl:param>
1852+ <wadl:param style="plain" required="false"
1853+ path="$['description']" name="description">
1854+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1855+<p>Description</p>
1856+<p>Free text describing this subscription.</p>
1857+
1858+</wadl:doc>
1859+
1860+ </wadl:param>
1861+ <wadl:param style="plain" required="false"
1862+ path="$['date_expires']"
1863+ type="xsd:dateTime" name="date_expires">
1864+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1865+<p>Date of Expiration</p>
1866+<p>The timestamp when the subscription will expire.</p>
1867+
1868+</wadl:doc>
1869+
1870+ </wadl:param>
1871+ </wadl:representation>
1872+
1873+ <!--Collection page for this type of entry-->
1874+ <wadl:resource_type id="archive_subscriber-page-resource">
1875+ <wadl:method name="GET"
1876+ id="archive_subscriber-page-resource-get">
1877+ <wadl:response>
1878+ <wadl:representation
1879+ href="#archive_subscriber-page"/>
1880+ </wadl:response>
1881+ </wadl:method>
1882+ </wadl:resource_type>
1883+
1884+ <wadl:representation mediaType="application/json"
1885+ id="archive_subscriber-page">
1886+
1887+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
1888+ <wadl:link/>
1889+ </wadl:param>
1890+
1891+ <wadl:param style="plain" name="total_size" path="$['total_size']" required="true"/>
1892+
1893+ <wadl:param style="plain" name="start" path="$['start']" required="true"/>
1894+
1895+ <wadl:param style="plain" name="next_collection_link" path="$['next_collection_link']">
1896+ <wadl:link resource_type="#archive_subscriber-page-resource"/>
1897+ </wadl:param>
1898+
1899+ <wadl:param style="plain" name="prev_collection_link" path="$['prev_collection_link']">
1900+ <wadl:link resource_type="#archive_subscriber-page-resource"/>
1901+ </wadl:param>
1902+
1903+ <wadl:param style="plain" name="entries" path="$['entries']" required="true"/>
1904+
1905+ <wadl:param style="plain" name="entry_links" path="$['entries'][*]['self_link']">
1906+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_subscriber"/>
1907+ </wadl:param>
1908+ </wadl:representation>
1909+
1910+
1911+
1912+ <wadl:resource_type id="archive">
1913+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1914+Main Archive interface.
1915+</wadl:doc>
1916+ <wadl:method name="GET" id="archive-get">
1917+ <wadl:response>
1918+ <wadl:representation
1919+ href="https://api.edge.launchpad.net/beta/#archive-full"/>
1920+ <wadl:representation
1921+ mediaType="application/xhtml+xml" id="archive-xhtml"/>
1922+ <wadl:representation
1923+ mediaType="application/vd.sun.wadl+xml"
1924+ id="archive-wadl"/>
1925+ </wadl:response>
1926+ </wadl:method>
1927+
1928+ <wadl:method name="PUT" id="archive-put">
1929+ <wadl:request>
1930+ <wadl:representation
1931+ href="https://api.edge.launchpad.net/beta/#archive-full"/>
1932+ </wadl:request>
1933+ </wadl:method>
1934+
1935+ <wadl:method name="PATCH" id="archive-patch">
1936+ <wadl:request>
1937+ <wadl:representation
1938+ href="https://api.edge.launchpad.net/beta/#archive-diff"/>
1939+ </wadl:request>
1940+ </wadl:method>
1941+
1942+
1943+
1944+ <wadl:method id="archive-isSourceUploadAllowed"
1945+ name="GET">
1946+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1947+<p>True if the person is allowed to upload the given source package.</p>
1948+<dl class="rst-docutils">
1949+<dt>Return True if there exists a permission that combines</dt>
1950+<dd><ul class="rst-first rst-last rst-simple">
1951+<li>this archive</li>
1952+<li>a package set that includes the given source package name</li>
1953+<li>the given person or a team he is a member of</li>
1954+</ul>
1955+</dd>
1956+</dl>
1957+<p>If the source package name is included by <em>any</em> package set with
1958+an explicit permission then only such explicit permissions will
1959+be considered.</p>
1960+<table class="rst-docutils field-list" frame="void" rules="none">
1961+<col class="field-name" />
1962+<col class="field-body" />
1963+<tbody valign="top">
1964+<tr class="rst-field"><th class="rst-field-name" colspan="2">param sourcepackagename:</th></tr>
1965+<tr><td>&nbsp;</td><td class="rst-field-body">the source package name; can be
1966+either a string or a ISourcePackageName.</td>
1967+</tr>
1968+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson for whom you want to find out which
1969+package sets he has access to.</td>
1970+</tr>
1971+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises NoSuchSourcePackageName:</th></tr>
1972+<tr><td>&nbsp;</td><td class="rst-field-body">if a source package with the
1973+given name could not be found.</td>
1974+</tr>
1975+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">True if the person is allowed to upload the source package.</td>
1976+</tr>
1977+</tbody>
1978+</table>
1979+
1980+</wadl:doc>
1981+ <wadl:request>
1982+
1983+ <wadl:param style="query" name="ws.op"
1984+ required="true"
1985+ fixed="isSourceUploadAllowed"/>
1986+ <wadl:param style="query" required="true"
1987+ name="person">
1988+
1989+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
1990+ </wadl:param>
1991+ <wadl:param style="query" required="true"
1992+ name="sourcepackagename">
1993+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
1994+Source package name
1995+</wadl:doc>
1996+
1997+ </wadl:param>
1998+
1999+ </wadl:request>
2000+
2001+ </wadl:method>
2002+ <wadl:method id="archive-getBuildCounters" name="GET">
2003+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2004+<p>Return a dictionary containing the build counters for an archive.</p>
2005+<p>This is necessary currently because the IArchive.failed_builds etc.
2006+counters are not in use.</p>
2007+<p>The returned dictionary contains the follwoing keys and values:</p>
2008+<blockquote>
2009+<ul class="rst-simple">
2010+<li>'total': total number of builds (includes SUPERSEDED);</li>
2011+<li>'pending': number of builds in BUILDING or NEEDSBUILD state;</li>
2012+<li>'failed': number of builds in FAILEDTOBUILD, MANUALDEPWAIT,
2013+CHROOTWAIT and FAILEDTOUPLOAD state;</li>
2014+<li>'succeeded': number of SUCCESSFULLYBUILT builds.</li>
2015+<li>'superseded': number of SUPERSEDED builds.</li>
2016+</ul>
2017+</blockquote>
2018+<table class="rst-docutils field-list" frame="void" rules="none">
2019+<col class="field-name" />
2020+<col class="field-body" />
2021+<tbody valign="top">
2022+<tr class="rst-field"><th class="rst-field-name" colspan="2">param include_needsbuild:</th></tr>
2023+<tr><td>&nbsp;</td><td class="rst-field-body">Indicates whether to include builds with
2024+the status NEEDSBUILD in the pending and total counts. This is
2025+useful in situations where a build that hasn't started isn't
2026+considered a build by the user.</td>
2027+</tr>
2028+<tr class="rst-field"><th class="rst-field-name" colspan="2">type include_needsbuild:</th></tr>
2029+<tr><td>&nbsp;</td><td class="rst-field-body"><tt class="rst-docutils literal"><span class="pre">bool</span></tt></td>
2030+</tr>
2031+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">a dictionary with the 4 keys specified above.</td>
2032+</tr>
2033+<tr class="rst-field"><th class="rst-field-name">rtype:</th><td class="rst-field-body"><tt class="rst-docutils literal"><span class="pre">dict</span></tt>.</td>
2034+</tr>
2035+</tbody>
2036+</table>
2037+
2038+</wadl:doc>
2039+ <wadl:request>
2040+
2041+ <wadl:param style="query" name="ws.op"
2042+ required="true"
2043+ fixed="getBuildCounters"/>
2044+ <wadl:param style="query" required="false"
2045+ name="include_needsbuild">
2046+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2047+Include builds with state NEEDSBUILD
2048+</wadl:doc>
2049+
2050+ </wadl:param>
2051+
2052+ </wadl:request>
2053+
2054+ </wadl:method>
2055+ <wadl:method id="archive-getComponentsForQueueAdmin"
2056+ name="GET">
2057+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2058+<p>Return IArchivePermission for the person's queue admin components</p>
2059+<table class="rst-docutils field-list" frame="void" rules="none">
2060+<col class="field-name" />
2061+<col class="field-body" />
2062+<tbody valign="top">
2063+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson</td>
2064+</tr>
2065+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">A list of IArchivePermission records.</td>
2066+</tr>
2067+</tbody>
2068+</table>
2069+
2070+</wadl:doc>
2071+ <wadl:request>
2072+
2073+ <wadl:param style="query" name="ws.op"
2074+ required="true"
2075+ fixed="getComponentsForQueueAdmin"/>
2076+ <wadl:param style="query" required="true"
2077+ name="person">
2078+
2079+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
2080+ </wadl:param>
2081+
2082+ </wadl:request>
2083+ <wadl:response>
2084+
2085+ <wadl:representation
2086+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2087+ </wadl:response>
2088+ </wadl:method>
2089+ <wadl:method id="archive-getArchiveDependency"
2090+ name="GET">
2091+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2092+<p>Return the IArchiveDependency object for the given dependency.</p>
2093+<table class="rst-docutils field-list" frame="void" rules="none">
2094+<col class="field-name" />
2095+<col class="field-body" />
2096+<tbody valign="top">
2097+<tr class="rst-field"><th class="rst-field-name" colspan="2">param dependency:</th></tr>
2098+<tr><td>&nbsp;</td><td class="rst-field-body">is an IArchive object.</td>
2099+</tr>
2100+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">IArchiveDependency or None if a corresponding object
2101+could not be found.</td>
2102+</tr>
2103+</tbody>
2104+</table>
2105+
2106+</wadl:doc>
2107+ <wadl:request>
2108+
2109+ <wadl:param style="query" name="ws.op"
2110+ required="true"
2111+ fixed="getArchiveDependency"/>
2112+ <wadl:param style="query" required="true"
2113+ name="dependency">
2114+
2115+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
2116+ </wadl:param>
2117+
2118+ </wadl:request>
2119+ <wadl:response>
2120+
2121+ <wadl:representation
2122+ href="https://api.edge.launchpad.net/beta/#archive_dependency-full"/>
2123+ </wadl:response>
2124+ </wadl:method>
2125+ <wadl:method id="archive-getPublishedSources"
2126+ name="GET">
2127+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2128+<p>All ISourcePackagePublishingHistory target to this archive.</p>
2129+<table class="rst-docutils field-list" frame="void" rules="none">
2130+<col class="field-name" />
2131+<col class="field-body" />
2132+<tbody valign="top">
2133+<tr class="rst-field"><th class="rst-field-name">param name:</th><td class="rst-field-body">source name filter (exact match or SQL LIKE controlled
2134+by 'exact_match' argument).</td>
2135+</tr>
2136+<tr class="rst-field"><th class="rst-field-name">param version:</th><td class="rst-field-body">source version filter (always exact match).</td>
2137+</tr>
2138+<tr class="rst-field"><th class="rst-field-name">param status:</th><td class="rst-field-body">PackagePublishingStatus filter, can be a sequence.</td>
2139+</tr>
2140+<tr class="rst-field"><th class="rst-field-name" colspan="2">param distroseries:</th></tr>
2141+<tr><td>&nbsp;</td><td class="rst-field-body">IDistroSeries filter.</td>
2142+</tr>
2143+<tr class="rst-field"><th class="rst-field-name">param pocket:</th><td class="rst-field-body">PackagePublishingPocket filter.</td>
2144+</tr>
2145+<tr class="rst-field"><th class="rst-field-name" colspan="2">param exact_match:</th></tr>
2146+<tr><td>&nbsp;</td><td class="rst-field-body">either or not filter source names by exact
2147+matching.</td>
2148+</tr>
2149+<tr class="rst-field"><th class="rst-field-name" colspan="2">param created_since_date:</th></tr>
2150+<tr><td>&nbsp;</td><td class="rst-field-body">Only return results whose date_created
2151+is greater than or equal to this date.</td>
2152+</tr>
2153+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">SelectResults containing ISourcePackagePublishingHistory.</td>
2154+</tr>
2155+</tbody>
2156+</table>
2157+
2158+</wadl:doc>
2159+ <wadl:request>
2160+
2161+ <wadl:param style="query" name="ws.op"
2162+ required="true"
2163+ fixed="getPublishedSources"/>
2164+ <wadl:param style="query" required="false"
2165+ name="status">
2166+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2167+<p>Package Publishing Status</p>
2168+<p>The status of this publishing record</p>
2169+
2170+</wadl:doc>
2171+
2172+ <wadl:option value="Pending"/>
2173+ <wadl:option value="Published"/>
2174+ <wadl:option value="Superseded"/>
2175+ <wadl:option value="Deleted"/>
2176+ <wadl:option value="Obsolete"/>
2177+ </wadl:param>
2178+ <wadl:param style="query" required="false"
2179+ name="source_name">
2180+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2181+Source package name
2182+</wadl:doc>
2183+
2184+ </wadl:param>
2185+ <wadl:param style="query" required="false"
2186+ name="distro_series">
2187+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2188+Distroseries name
2189+</wadl:doc>
2190+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#distro_series"/>
2191+ </wadl:param>
2192+ <wadl:param style="query" required="false"
2193+ name="exact_match">
2194+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2195+<p>Exact Match</p>
2196+<p>Whether or not to filter source names by exact matching.</p>
2197+
2198+</wadl:doc>
2199+
2200+ </wadl:param>
2201+ <wadl:param style="query" required="false"
2202+ name="pocket">
2203+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2204+<p>Pocket</p>
2205+<p>The pocket into which this entry is published</p>
2206+
2207+</wadl:doc>
2208+
2209+ <wadl:option value="Release"/>
2210+ <wadl:option value="Security"/>
2211+ <wadl:option value="Updates"/>
2212+ <wadl:option value="Proposed"/>
2213+ <wadl:option value="Backports"/>
2214+ </wadl:param>
2215+ <wadl:param style="query" required="false"
2216+ name="version">
2217+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2218+Version
2219+</wadl:doc>
2220+
2221+ </wadl:param>
2222+ <wadl:param style="query" required="false"
2223+ type="xsd:dateTime"
2224+ name="created_since_date">
2225+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2226+<p>Created Since Date</p>
2227+<p>Return entries whose date_created is greater than or equal to this date.</p>
2228+
2229+</wadl:doc>
2230+
2231+ </wadl:param>
2232+
2233+ </wadl:request>
2234+ <wadl:response>
2235+
2236+ <wadl:representation
2237+ href="https://api.edge.launchpad.net/beta/#source_package_publishing_history-page"/>
2238+ </wadl:response>
2239+ </wadl:method>
2240+ <wadl:method id="archive-getUploadersForPackageset"
2241+ name="GET">
2242+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2243+<p>The ArchivePermission records for uploaders to the package set.</p>
2244+<table class="rst-docutils field-list" frame="void" rules="none">
2245+<col class="field-name" />
2246+<col class="field-body" />
2247+<tbody valign="top">
2248+<tr class="rst-field"><th class="rst-field-name" colspan="2">param packageset:</th></tr>
2249+<tr><td>&nbsp;</td><td class="rst-field-body">An IPackageset or a string package set name.</td>
2250+</tr>
2251+<tr class="rst-field"><th class="rst-field-name" colspan="2">param direct_permissions:</th></tr>
2252+<tr><td>&nbsp;</td><td class="rst-field-body">If True, only consider permissions granted
2253+directly for the package set at hand. Otherwise, include any
2254+uploaders for package sets that include this one.</td>
2255+</tr>
2256+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">ArchivePermission records for all the uploaders who are
2257+authorized to upload to the named source package set.</td>
2258+</tr>
2259+</tbody>
2260+</table>
2261+
2262+</wadl:doc>
2263+ <wadl:request>
2264+
2265+ <wadl:param style="query" name="ws.op"
2266+ required="true"
2267+ fixed="getUploadersForPackageset"/>
2268+ <wadl:param style="query" required="true"
2269+ name="packageset">
2270+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2271+Package set
2272+</wadl:doc>
2273+
2274+ </wadl:param>
2275+ <wadl:param style="query" required="false"
2276+ name="direct_permissions">
2277+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2278+Ignore package set hierarchy
2279+</wadl:doc>
2280+
2281+ </wadl:param>
2282+
2283+ </wadl:request>
2284+ <wadl:response>
2285+
2286+ <wadl:representation
2287+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2288+ </wadl:response>
2289+ </wadl:method>
2290+ <wadl:method id="archive-getPackagesetsForSource"
2291+ name="GET">
2292+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2293+<p>All package set based permissions for the given source.</p>
2294+<p>This method is meant to aid the process of &quot;debugging&quot; package set
2295+based archive permission since It allows the listing of permissions
2296+for the given source package in this archive (irrespective of the
2297+principal).</p>
2298+<table class="rst-docutils field-list" frame="void" rules="none">
2299+<col class="field-name" />
2300+<col class="field-body" />
2301+<tbody valign="top">
2302+<tr class="rst-field"><th class="rst-field-name" colspan="2">param sourcepackagename:</th></tr>
2303+<tr><td>&nbsp;</td><td class="rst-field-body">the source package name; can be
2304+either a string or a ISourcePackageName.</td>
2305+</tr>
2306+<tr class="rst-field"><th class="rst-field-name" colspan="2">param direct_permissions:</th></tr>
2307+<tr><td>&nbsp;</td><td class="rst-field-body">If set only package sets that directly
2308+include the given source will be considered.</td>
2309+</tr>
2310+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises NoSuchSourcePackageName:</th></tr>
2311+<tr><td>&nbsp;</td><td class="rst-field-body">if a source package with the
2312+given name could not be found.</td>
2313+</tr>
2314+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">ArchivePermission records for the package sets that
2315+include the given source package name and apply to the
2316+archive in question.</td>
2317+</tr>
2318+</tbody>
2319+</table>
2320+
2321+</wadl:doc>
2322+ <wadl:request>
2323+
2324+ <wadl:param style="query" name="ws.op"
2325+ required="true"
2326+ fixed="getPackagesetsForSource"/>
2327+ <wadl:param style="query" required="true"
2328+ name="sourcepackagename">
2329+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2330+Source package name
2331+</wadl:doc>
2332+
2333+ </wadl:param>
2334+ <wadl:param style="query" required="false"
2335+ name="direct_permissions">
2336+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2337+Ignore package set hierarchy
2338+</wadl:doc>
2339+
2340+ </wadl:param>
2341+
2342+ </wadl:request>
2343+ <wadl:response>
2344+
2345+ <wadl:representation
2346+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2347+ </wadl:response>
2348+ </wadl:method>
2349+ <wadl:method id="archive-getBuildRecords" name="GET">
2350+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2351+<p>Return build records in the context it is implemented.</p>
2352+<p>It excludes build records generated by Gina (imported from a external
2353+repository), where IBuild.datebuilt is null and IBuild.buildstate
2354+is BuildStatus.FULLYBUILT.</p>
2355+<p>The result is simply not filtered if the optional filters are omitted
2356+by call sites.</p>
2357+<table class="rst-docutils field-list" frame="void" rules="none">
2358+<col class="field-name" />
2359+<col class="field-body" />
2360+<tbody valign="top">
2361+<tr class="rst-field"><th class="rst-field-name" colspan="2">param build_state:</th></tr>
2362+<tr><td>&nbsp;</td><td class="rst-field-body">optional BuildStatus value for filtering build
2363+records;</td>
2364+</tr>
2365+<tr class="rst-field"><th class="rst-field-name">param name:</th><td class="rst-field-body">optional string for filtering build source package name.
2366+Sub-string matching is allowed via SQL LIKE.</td>
2367+</tr>
2368+<tr class="rst-field"><th class="rst-field-name">param pocket:</th><td class="rst-field-body">optional PackagePublishingPocket value for filtering
2369+build records;</td>
2370+</tr>
2371+<tr class="rst-field"><th class="rst-field-name">param arch_tag:</th><td class="rst-field-body">optional string for filtering build source packages
2372+by their architecture tag;</td>
2373+</tr>
2374+<tr class="rst-field"><th class="rst-field-name">param user:</th><td class="rst-field-body">optional IPerson corresponding to the user performing
2375+the request. It will filter out build records for which the user
2376+have no 'view' permission.</td>
2377+</tr>
2378+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">a result set containing IBuild records ordered by descending
2379+IBuild.datebuilt except when builds are filtered by
2380+BuildStatus.NEEDSBUILD, in this case records are ordered by
2381+descending BuildQueue.lastscore (dispatching order).</td>
2382+</tr>
2383+</tbody>
2384+</table>
2385+
2386+</wadl:doc>
2387+ <wadl:request>
2388+
2389+ <wadl:param style="query" name="ws.op"
2390+ required="true"
2391+ fixed="getBuildRecords"/>
2392+ <wadl:param style="query" required="false"
2393+ name="pocket">
2394+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2395+<p>Pocket</p>
2396+<p>The pocket into which this entry is published</p>
2397+
2398+</wadl:doc>
2399+
2400+ <wadl:option value="Release"/>
2401+ <wadl:option value="Security"/>
2402+ <wadl:option value="Updates"/>
2403+ <wadl:option value="Proposed"/>
2404+ <wadl:option value="Backports"/>
2405+ </wadl:param>
2406+ <wadl:param style="query" required="false"
2407+ name="build_state">
2408+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2409+<p>Build status</p>
2410+<p>The status of this build record</p>
2411+
2412+</wadl:doc>
2413+
2414+ <wadl:option value="Needs building"/>
2415+ <wadl:option value="Successfully built"/>
2416+ <wadl:option value="Failed to build"/>
2417+ <wadl:option value="Dependency wait"/>
2418+ <wadl:option value="Chroot problem"/>
2419+ <wadl:option value="Build for superseded Source"/>
2420+ <wadl:option value="Currently building"/>
2421+ <wadl:option value="Failed to upload"/>
2422+ </wadl:param>
2423+ <wadl:param style="query" required="false"
2424+ name="source_name">
2425+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2426+Source package name
2427+</wadl:doc>
2428+
2429+ </wadl:param>
2430+
2431+ </wadl:request>
2432+ <wadl:response>
2433+
2434+ <wadl:representation
2435+ href="https://api.edge.launchpad.net/beta/#build-page"/>
2436+ </wadl:response>
2437+ </wadl:method>
2438+ <wadl:method id="archive-getPublishedBinaries"
2439+ name="GET">
2440+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2441+<p>All IBinaryPackagePublishingHistory target to this archive.</p>
2442+<table class="rst-docutils field-list" frame="void" rules="none">
2443+<col class="field-name" />
2444+<col class="field-body" />
2445+<tbody valign="top">
2446+<tr class="rst-field"><th class="rst-field-name">param:</th><td class="rst-field-body">name: binary name filter (exact match or SQL LIKE controlled
2447+by 'exact_match' argument).</td>
2448+</tr>
2449+<tr class="rst-field"><th class="rst-field-name">param:</th><td class="rst-field-body">version: binary version filter (always exact match).</td>
2450+</tr>
2451+<tr class="rst-field"><th class="rst-field-name">param:</th><td class="rst-field-body">status: PackagePublishingStatus filter, can be a list.</td>
2452+</tr>
2453+<tr class="rst-field"><th class="rst-field-name">param:</th><td class="rst-field-body">distroarchseries: IDistroArchSeries filter, can be a list.</td>
2454+</tr>
2455+<tr class="rst-field"><th class="rst-field-name">param:</th><td class="rst-field-body">pocket: PackagePublishingPocket filter.</td>
2456+</tr>
2457+<tr class="rst-field"><th class="rst-field-name">param:</th><td class="rst-field-body">exact_match: either or not filter source names by exact
2458+matching.</td>
2459+</tr>
2460+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">A collection containing BinaryPackagePublishingHistory.</td>
2461+</tr>
2462+</tbody>
2463+</table>
2464+
2465+</wadl:doc>
2466+ <wadl:request>
2467+
2468+ <wadl:param style="query" name="ws.op"
2469+ required="true"
2470+ fixed="getPublishedBinaries"/>
2471+ <wadl:param style="query" required="false"
2472+ name="status">
2473+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2474+<p>Package Publishing Status</p>
2475+<p>The status of this publishing record</p>
2476+
2477+</wadl:doc>
2478+
2479+ <wadl:option value="Pending"/>
2480+ <wadl:option value="Published"/>
2481+ <wadl:option value="Superseded"/>
2482+ <wadl:option value="Deleted"/>
2483+ <wadl:option value="Obsolete"/>
2484+ </wadl:param>
2485+ <wadl:param style="query" required="false"
2486+ name="binary_name">
2487+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2488+Binary Package Name
2489+</wadl:doc>
2490+
2491+ </wadl:param>
2492+ <wadl:param style="query" required="false"
2493+ name="exact_match">
2494+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2495+Whether or not to filter binary names by exact matching.
2496+</wadl:doc>
2497+
2498+ </wadl:param>
2499+ <wadl:param style="query" required="false"
2500+ name="pocket">
2501+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2502+<p>Pocket</p>
2503+<p>The pocket into which this entry is published</p>
2504+
2505+</wadl:doc>
2506+
2507+ <wadl:option value="Release"/>
2508+ <wadl:option value="Security"/>
2509+ <wadl:option value="Updates"/>
2510+ <wadl:option value="Proposed"/>
2511+ <wadl:option value="Backports"/>
2512+ </wadl:param>
2513+ <wadl:param style="query" required="false"
2514+ name="version">
2515+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2516+Version
2517+</wadl:doc>
2518+
2519+ </wadl:param>
2520+ <wadl:param style="query" required="false"
2521+ name="distro_arch_series">
2522+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2523+Distro Arch Series
2524+</wadl:doc>
2525+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#distro_arch_series"/>
2526+ </wadl:param>
2527+
2528+ </wadl:request>
2529+ <wadl:response>
2530+
2531+ <wadl:representation
2532+ href="https://api.edge.launchpad.net/beta/#binary_package_publishing_history-page"/>
2533+ </wadl:response>
2534+ </wadl:method>
2535+ <wadl:method id="archive-getUploadersForComponent"
2536+ name="GET">
2537+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2538+<p>Return IArchivePermission records for the component's uploaders.</p>
2539+<table class="rst-docutils field-list" frame="void" rules="none">
2540+<col class="field-name" />
2541+<col class="field-body" />
2542+<tbody valign="top">
2543+<tr class="rst-field"><th class="rst-field-name" colspan="2">param component_name:</th></tr>
2544+<tr><td>&nbsp;</td><td class="rst-field-body">An IComponent or textual name for the
2545+component.</td>
2546+</tr>
2547+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">A list of IArchivePermission records.</td>
2548+</tr>
2549+</tbody>
2550+</table>
2551+
2552+</wadl:doc>
2553+ <wadl:request>
2554+
2555+ <wadl:param style="query" name="ws.op"
2556+ required="true"
2557+ fixed="getUploadersForComponent"/>
2558+ <wadl:param style="query" required="false"
2559+ name="component_name">
2560+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2561+Component Name
2562+</wadl:doc>
2563+
2564+ </wadl:param>
2565+
2566+ </wadl:request>
2567+ <wadl:response>
2568+
2569+ <wadl:representation
2570+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2571+ </wadl:response>
2572+ </wadl:method>
2573+ <wadl:method id="archive-getUploadersForPackage"
2574+ name="GET">
2575+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2576+<p>Return IArchivePermission records for the package's uploaders.</p>
2577+<table class="rst-docutils field-list" frame="void" rules="none">
2578+<col class="field-name" />
2579+<col class="field-body" />
2580+<tbody valign="top">
2581+<tr class="rst-field"><th class="rst-field-name" colspan="2">param source_package_name:</th></tr>
2582+<tr><td>&nbsp;</td><td class="rst-field-body">An ISourcePackageName or textual name
2583+for the source package.</td>
2584+</tr>
2585+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">A list of IArchivePermission records.</td>
2586+</tr>
2587+</tbody>
2588+</table>
2589+
2590+</wadl:doc>
2591+ <wadl:request>
2592+
2593+ <wadl:param style="query" name="ws.op"
2594+ required="true"
2595+ fixed="getUploadersForPackage"/>
2596+ <wadl:param style="query" required="true"
2597+ name="source_package_name">
2598+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2599+Source Package Name
2600+</wadl:doc>
2601+
2602+ </wadl:param>
2603+
2604+ </wadl:request>
2605+ <wadl:response>
2606+
2607+ <wadl:representation
2608+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2609+ </wadl:response>
2610+ </wadl:method>
2611+ <wadl:method id="archive-getBuildSummariesForSourceIds"
2612+ name="GET">
2613+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2614+<p>Return a dictionary containing a summary of the build statuses.</p>
2615+<p>Only information for sources belonging to the current archive will
2616+be returned. See
2617+IPublishingSet.getBuildStatusSummariesForSourceIdsAndArchive() for
2618+details.</p>
2619+<table class="rst-docutils field-list" frame="void" rules="none">
2620+<col class="field-name" />
2621+<col class="field-body" />
2622+<tbody valign="top">
2623+<tr class="rst-field"><th class="rst-field-name" colspan="2">param source_ids:</th></tr>
2624+<tr><td>&nbsp;</td><td class="rst-field-body">A list of source publishing history record ids.</td>
2625+</tr>
2626+<tr class="rst-field"><th class="rst-field-name" colspan="2">type source_ids:</th></tr>
2627+<tr><td>&nbsp;</td><td class="rst-field-body"><tt class="rst-docutils literal"><span class="pre">list</span></tt></td>
2628+</tr>
2629+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">A dict consisting of the overall status summaries for the
2630+given ids that belong in the archive.</td>
2631+</tr>
2632+</tbody>
2633+</table>
2634+
2635+</wadl:doc>
2636+ <wadl:request>
2637+
2638+ <wadl:param style="query" name="ws.op"
2639+ required="true"
2640+ fixed="getBuildSummariesForSourceIds"/>
2641+ <wadl:param style="query" required="true"
2642+ name="source_ids">
2643+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2644+A list of source publishing history record ids.
2645+</wadl:doc>
2646+
2647+ </wadl:param>
2648+
2649+ </wadl:request>
2650+
2651+ </wadl:method>
2652+ <wadl:method id="archive-getQueueAdminsForComponent"
2653+ name="GET">
2654+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2655+<p>Return IArchivePermission records for authorised queue admins.</p>
2656+<table class="rst-docutils field-list" frame="void" rules="none">
2657+<col class="field-name" />
2658+<col class="field-body" />
2659+<tbody valign="top">
2660+<tr class="rst-field"><th class="rst-field-name" colspan="2">param component_name:</th></tr>
2661+<tr><td>&nbsp;</td><td class="rst-field-body">An IComponent or textual name for the
2662+component.</td>
2663+</tr>
2664+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">A list of IArchivePermission records.</td>
2665+</tr>
2666+</tbody>
2667+</table>
2668+
2669+</wadl:doc>
2670+ <wadl:request>
2671+
2672+ <wadl:param style="query" name="ws.op"
2673+ required="true"
2674+ fixed="getQueueAdminsForComponent"/>
2675+ <wadl:param style="query" required="true"
2676+ name="component_name">
2677+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2678+Component Name
2679+</wadl:doc>
2680+
2681+ </wadl:param>
2682+
2683+ </wadl:request>
2684+ <wadl:response>
2685+
2686+ <wadl:representation
2687+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2688+ </wadl:response>
2689+ </wadl:method>
2690+ <wadl:method id="archive-getPermissionsForPerson"
2691+ name="GET">
2692+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2693+<p>Return the IArchivePermission records applicable to the person.</p>
2694+<table class="rst-docutils field-list" frame="void" rules="none">
2695+<col class="field-name" />
2696+<col class="field-body" />
2697+<tbody valign="top">
2698+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson</td>
2699+</tr>
2700+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">A list of IArchivePermission records.</td>
2701+</tr>
2702+</tbody>
2703+</table>
2704+
2705+</wadl:doc>
2706+ <wadl:request>
2707+
2708+ <wadl:param style="query" name="ws.op"
2709+ required="true"
2710+ fixed="getPermissionsForPerson"/>
2711+ <wadl:param style="query" required="true"
2712+ name="person">
2713+
2714+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
2715+ </wadl:param>
2716+
2717+ </wadl:request>
2718+ <wadl:response>
2719+
2720+ <wadl:representation
2721+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2722+ </wadl:response>
2723+ </wadl:method>
2724+ <wadl:method id="archive-getPackagesetsForSourceUploader"
2725+ name="GET">
2726+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2727+<p>The package set based permissions for a given source and uploader.</p>
2728+<dl class="rst-docutils">
2729+<dt>Return the IArchivePermission records that</dt>
2730+<dd><ul class="rst-first rst-last">
2731+<li><p class="rst-first">apply to this archive</p>
2732+</li>
2733+<li><dl class="rst-first rst-docutils">
2734+<dt>relate to</dt>
2735+<dd><ul class="rst-first rst-last rst-simple">
2736+<li>package sets that include the given source package name</li>
2737+<li>the given person</li>
2738+</ul>
2739+</dd>
2740+</dl>
2741+</li>
2742+</ul>
2743+</dd>
2744+</dl>
2745+<table class="rst-docutils field-list" frame="void" rules="none">
2746+<col class="field-name" />
2747+<col class="field-body" />
2748+<tbody valign="top">
2749+<tr class="rst-field"><th class="rst-field-name" colspan="2">param sourcepackagename:</th></tr>
2750+<tr><td>&nbsp;</td><td class="rst-field-body">the source package name; can be
2751+either a string or a ISourcePackageName.</td>
2752+</tr>
2753+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson for whom you want to find out which
2754+package sets he has access to.</td>
2755+</tr>
2756+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises NoSuchSourcePackageName:</th></tr>
2757+<tr><td>&nbsp;</td><td class="rst-field-body">if a source package with the
2758+given name could not be found.</td>
2759+</tr>
2760+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">ArchivePermission records for the package sets that
2761+include the given source package name and to which the given
2762+person may upload.</td>
2763+</tr>
2764+</tbody>
2765+</table>
2766+
2767+</wadl:doc>
2768+ <wadl:request>
2769+
2770+ <wadl:param style="query" name="ws.op"
2771+ required="true"
2772+ fixed="getPackagesetsForSourceUploader"/>
2773+ <wadl:param style="query" required="true"
2774+ name="person">
2775+
2776+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
2777+ </wadl:param>
2778+ <wadl:param style="query" required="true"
2779+ name="sourcepackagename">
2780+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2781+Source package name
2782+</wadl:doc>
2783+
2784+ </wadl:param>
2785+
2786+ </wadl:request>
2787+ <wadl:response>
2788+
2789+ <wadl:representation
2790+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2791+ </wadl:response>
2792+ </wadl:method>
2793+ <wadl:method id="archive-getPackagesetsForUploader"
2794+ name="GET">
2795+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2796+<p>The ArchivePermission records for the person's package sets.</p>
2797+<table class="rst-docutils field-list" frame="void" rules="none">
2798+<col class="field-name" />
2799+<col class="field-body" />
2800+<tbody valign="top">
2801+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson for whom you want to find out which
2802+package sets he has access to.</td>
2803+</tr>
2804+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">ArchivePermission records for all the package sets that
2805+'person' is allowed to upload to.</td>
2806+</tr>
2807+</tbody>
2808+</table>
2809+
2810+</wadl:doc>
2811+ <wadl:request>
2812+
2813+ <wadl:param style="query" name="ws.op"
2814+ required="true"
2815+ fixed="getPackagesetsForUploader"/>
2816+ <wadl:param style="query" required="true"
2817+ name="person">
2818+
2819+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
2820+ </wadl:param>
2821+
2822+ </wadl:request>
2823+ <wadl:response>
2824+
2825+ <wadl:representation
2826+ href="https://api.edge.launchpad.net/beta/#archive_permission-page"/>
2827+ </wadl:response>
2828+ </wadl:method>
2829+ <wadl:method id="archive-syncSource" name="POST">
2830+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2831+<p>Synchronise (copy) a single named source into this archive.</p>
2832+<p>Copy a specific version of a named source to the destination
2833+archive if necessary.</p>
2834+<table class="rst-docutils field-list" frame="void" rules="none">
2835+<col class="field-name" />
2836+<col class="field-body" />
2837+<tbody valign="top">
2838+<tr class="rst-field"><th class="rst-field-name" colspan="2">param source_name:</th></tr>
2839+<tr><td>&nbsp;</td><td class="rst-field-body">a string name of the package to copy.</td>
2840+</tr>
2841+<tr class="rst-field"><th class="rst-field-name">param version:</th><td class="rst-field-body">the version of the package to copy.</td>
2842+</tr>
2843+<tr class="rst-field"><th class="rst-field-name" colspan="2">param from_archive:</th></tr>
2844+<tr><td>&nbsp;</td><td class="rst-field-body">the source archive from which to copy.</td>
2845+</tr>
2846+<tr class="rst-field"><th class="rst-field-name" colspan="2">param to_pocket:</th></tr>
2847+<tr><td>&nbsp;</td><td class="rst-field-body">the target pocket (as a string).</td>
2848+</tr>
2849+<tr class="rst-field"><th class="rst-field-name" colspan="2">param to_series:</th></tr>
2850+<tr><td>&nbsp;</td><td class="rst-field-body">the target distroseries (as a string).</td>
2851+</tr>
2852+<tr class="rst-field"><th class="rst-field-name" colspan="2">param include_binaries:</th></tr>
2853+<tr><td>&nbsp;</td><td class="rst-field-body">optional boolean, controls whether or not
2854+the published binaries for each given source should also be
2855+copied along with the source.</td>
2856+</tr>
2857+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises NoSuchSourcePackageName:</th></tr>
2858+<tr><td>&nbsp;</td><td class="rst-field-body">if the source name is invalid</td>
2859+</tr>
2860+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises PocketNotFound:</th></tr>
2861+<tr><td>&nbsp;</td><td class="rst-field-body">if the pocket name is invalid</td>
2862+</tr>
2863+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises DistroSeriesNotFound:</th></tr>
2864+<tr><td>&nbsp;</td><td class="rst-field-body">if the distro series name is invalid</td>
2865+</tr>
2866+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises CannotCopy:</th></tr>
2867+<tr><td>&nbsp;</td><td class="rst-field-body">if there is a problem copying.</td>
2868+</tr>
2869+</tbody>
2870+</table>
2871+
2872+</wadl:doc>
2873+ <wadl:request>
2874+ <wadl:representation
2875+ mediaType="application/x-www-form-urlencoded">
2876+ <wadl:param style="query" name="ws.op"
2877+ required="true" fixed="syncSource"/>
2878+ <wadl:param style="query" required="false"
2879+ name="to_series">
2880+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2881+Distroseries name
2882+</wadl:doc>
2883+
2884+ </wadl:param>
2885+ <wadl:param style="query" required="true"
2886+ name="source_name">
2887+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2888+Source package name
2889+</wadl:doc>
2890+
2891+ </wadl:param>
2892+ <wadl:param style="query" required="true"
2893+ name="version">
2894+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2895+Version
2896+</wadl:doc>
2897+
2898+ </wadl:param>
2899+ <wadl:param style="query" required="true"
2900+ name="from_archive">
2901+
2902+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
2903+ </wadl:param>
2904+ <wadl:param style="query" required="true"
2905+ name="to_pocket">
2906+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2907+Pocket name
2908+</wadl:doc>
2909+
2910+ </wadl:param>
2911+ <wadl:param style="query" required="false"
2912+ name="include_binaries">
2913+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2914+<p>Include Binaries</p>
2915+<p>Whether or not to copy binaries already built for this source</p>
2916+
2917+</wadl:doc>
2918+
2919+ </wadl:param>
2920+ </wadl:representation>
2921+ </wadl:request>
2922+
2923+ </wadl:method>
2924+ <wadl:method id="archive-deleteQueueAdmin" name="POST">
2925+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2926+<p>Revoke permission for the person to administer distroseries queues.</p>
2927+<p>The supplied person will lose permission to administer the
2928+distroseries queue for packages in the supplied component.</p>
2929+<table class="rst-docutils field-list" frame="void" rules="none">
2930+<col class="field-name" />
2931+<col class="field-body" />
2932+<tbody valign="top">
2933+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson whose permission should be revoked.</td>
2934+</tr>
2935+<tr class="rst-field"><th class="rst-field-name" colspan="2">param component:</th></tr>
2936+<tr><td>&nbsp;</td><td class="rst-field-body">An IComponent or textual component name.</td>
2937+</tr>
2938+</tbody>
2939+</table>
2940+
2941+</wadl:doc>
2942+ <wadl:request>
2943+ <wadl:representation
2944+ mediaType="application/x-www-form-urlencoded">
2945+ <wadl:param style="query" name="ws.op"
2946+ required="true"
2947+ fixed="deleteQueueAdmin"/>
2948+ <wadl:param style="query" required="true"
2949+ name="person">
2950+
2951+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
2952+ </wadl:param>
2953+ <wadl:param style="query" required="true"
2954+ name="component_name">
2955+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2956+Component Name
2957+</wadl:doc>
2958+
2959+ </wadl:param>
2960+ </wadl:representation>
2961+ </wadl:request>
2962+
2963+ </wadl:method>
2964+ <wadl:method id="archive-newComponentUploader"
2965+ name="POST">
2966+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
2967+<p>Add permission for a person to upload to a component.</p>
2968+<table class="rst-docutils field-list" frame="void" rules="none">
2969+<col class="field-name" />
2970+<col class="field-body" />
2971+<tbody valign="top">
2972+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson whom should be given permission.</td>
2973+</tr>
2974+<tr class="rst-field"><th class="rst-field-name" colspan="2">param component:</th></tr>
2975+<tr><td>&nbsp;</td><td class="rst-field-body">An IComponent or textual component name.</td>
2976+</tr>
2977+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">An IArchivePermission which is the newly-created
2978+permission.</td>
2979+</tr>
2980+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises InvalidComponent:</th></tr>
2981+<tr><td>&nbsp;</td><td class="rst-field-body">if this archive is a PPA and the component
2982+is not 'main'.</td>
2983+</tr>
2984+</tbody>
2985+</table>
2986+
2987+</wadl:doc>
2988+ <wadl:request>
2989+ <wadl:representation
2990+ mediaType="application/x-www-form-urlencoded">
2991+ <wadl:param style="query" name="ws.op"
2992+ required="true"
2993+ fixed="newComponentUploader"/>
2994+ <wadl:param style="query" required="true"
2995+ name="person">
2996+
2997+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
2998+ </wadl:param>
2999+ <wadl:param style="query" required="true"
3000+ name="component_name">
3001+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3002+Component Name
3003+</wadl:doc>
3004+
3005+ </wadl:param>
3006+ </wadl:representation>
3007+ </wadl:request>
3008+ <wadl:response>
3009+ <wadl:param name="Location" style="header">
3010+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_permission"/>
3011+ </wadl:param>
3012+
3013+ </wadl:response>
3014+ </wadl:method>
3015+ <wadl:method id="archive-syncSources" name="POST">
3016+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3017+<p>Synchronise (copy) named sources into this archive from another.</p>
3018+<p>It will copy the most recent versions of the named sources to
3019+the destination archive if necessary.</p>
3020+<p>This operation will only succeeds when all requested packages
3021+are synchronised between the archives. If any of the requested
3022+copies cannot be performed, the whole operation will fail. There
3023+will be no partial changes of the destination archive.</p>
3024+<table class="rst-docutils field-list" frame="void" rules="none">
3025+<col class="field-name" />
3026+<col class="field-body" />
3027+<tbody valign="top">
3028+<tr class="rst-field"><th class="rst-field-name" colspan="2">param source_names:</th></tr>
3029+<tr><td>&nbsp;</td><td class="rst-field-body">a list of string names of packages to copy.</td>
3030+</tr>
3031+<tr class="rst-field"><th class="rst-field-name" colspan="2">param from_archive:</th></tr>
3032+<tr><td>&nbsp;</td><td class="rst-field-body">the source archive from which to copy.</td>
3033+</tr>
3034+<tr class="rst-field"><th class="rst-field-name" colspan="2">param to_pocket:</th></tr>
3035+<tr><td>&nbsp;</td><td class="rst-field-body">the target pocket (as a string).</td>
3036+</tr>
3037+<tr class="rst-field"><th class="rst-field-name" colspan="2">param to_series:</th></tr>
3038+<tr><td>&nbsp;</td><td class="rst-field-body">the target distroseries (as a string).</td>
3039+</tr>
3040+<tr class="rst-field"><th class="rst-field-name" colspan="2">param include_binaries:</th></tr>
3041+<tr><td>&nbsp;</td><td class="rst-field-body">optional boolean, controls whether or not
3042+the published binaries for each given source should also be
3043+copied along with the source.</td>
3044+</tr>
3045+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises NoSuchSourcePackageName:</th></tr>
3046+<tr><td>&nbsp;</td><td class="rst-field-body">if the source name is invalid</td>
3047+</tr>
3048+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises PocketNotFound:</th></tr>
3049+<tr><td>&nbsp;</td><td class="rst-field-body">if the pocket name is invalid</td>
3050+</tr>
3051+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises DistroSeriesNotFound:</th></tr>
3052+<tr><td>&nbsp;</td><td class="rst-field-body">if the distro series name is invalid</td>
3053+</tr>
3054+<tr class="rst-field"><th class="rst-field-name" colspan="2">raises CannotCopy:</th></tr>
3055+<tr><td>&nbsp;</td><td class="rst-field-body">if there is a problem copying.</td>
3056+</tr>
3057+</tbody>
3058+</table>
3059+
3060+</wadl:doc>
3061+ <wadl:request>
3062+ <wadl:representation
3063+ mediaType="application/x-www-form-urlencoded">
3064+ <wadl:param style="query" name="ws.op"
3065+ required="true" fixed="syncSources"/>
3066+ <wadl:param style="query" required="false"
3067+ name="to_series">
3068+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3069+Distroseries name
3070+</wadl:doc>
3071+
3072+ </wadl:param>
3073+ <wadl:param style="query" required="true"
3074+ name="to_pocket">
3075+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3076+Pocket name
3077+</wadl:doc>
3078+
3079+ </wadl:param>
3080+ <wadl:param style="query" required="true"
3081+ name="source_names">
3082+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3083+Source package names
3084+</wadl:doc>
3085+
3086+ </wadl:param>
3087+ <wadl:param style="query" required="true"
3088+ name="from_archive">
3089+
3090+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
3091+ </wadl:param>
3092+ <wadl:param style="query" required="false"
3093+ name="include_binaries">
3094+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3095+<p>Include Binaries</p>
3096+<p>Whether or not to copy binaries already built for this source</p>
3097+
3098+</wadl:doc>
3099+
3100+ </wadl:param>
3101+ </wadl:representation>
3102+ </wadl:request>
3103+
3104+ </wadl:method>
3105+ <wadl:method id="archive-deletePackageUploader"
3106+ name="POST">
3107+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3108+<p>Revoke permission for the person to upload the package.</p>
3109+<table class="rst-docutils field-list" frame="void" rules="none">
3110+<col class="field-name" />
3111+<col class="field-body" />
3112+<tbody valign="top">
3113+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson whose permission should be revoked.</td>
3114+</tr>
3115+<tr class="rst-field"><th class="rst-field-name" colspan="2">param source_package_name:</th></tr>
3116+<tr><td>&nbsp;</td><td class="rst-field-body">An ISourcePackageName or textual package
3117+name.</td>
3118+</tr>
3119+</tbody>
3120+</table>
3121+
3122+</wadl:doc>
3123+ <wadl:request>
3124+ <wadl:representation
3125+ mediaType="application/x-www-form-urlencoded">
3126+ <wadl:param style="query" name="ws.op"
3127+ required="true"
3128+ fixed="deletePackageUploader"/>
3129+ <wadl:param style="query" required="true"
3130+ name="person">
3131+
3132+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3133+ </wadl:param>
3134+ <wadl:param style="query" required="true"
3135+ name="source_package_name">
3136+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3137+Source Package Name
3138+</wadl:doc>
3139+
3140+ </wadl:param>
3141+ </wadl:representation>
3142+ </wadl:request>
3143+
3144+ </wadl:method>
3145+ <wadl:method id="archive-deletePackagesetUploader"
3146+ name="POST">
3147+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3148+<p>Revoke upload permissions for a person.</p>
3149+<table class="rst-docutils field-list" frame="void" rules="none">
3150+<col class="field-name" />
3151+<col class="field-body" />
3152+<tbody valign="top">
3153+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson for whom you want to revoke permission.</td>
3154+</tr>
3155+<tr class="rst-field"><th class="rst-field-name" colspan="2">param packageset:</th></tr>
3156+<tr><td>&nbsp;</td><td class="rst-field-body">An IPackageset or a string package set name.</td>
3157+</tr>
3158+<tr class="rst-field"><th class="rst-field-name">param explicit:</th><td class="rst-field-body">The value of the 'explicit' flag for the permission
3159+to be revoked.</td>
3160+</tr>
3161+</tbody>
3162+</table>
3163+
3164+</wadl:doc>
3165+ <wadl:request>
3166+ <wadl:representation
3167+ mediaType="application/x-www-form-urlencoded">
3168+ <wadl:param style="query" name="ws.op"
3169+ required="true"
3170+ fixed="deletePackagesetUploader"/>
3171+ <wadl:param style="query" required="true"
3172+ name="person">
3173+
3174+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3175+ </wadl:param>
3176+ <wadl:param style="query" required="true"
3177+ name="packageset">
3178+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3179+Package set
3180+</wadl:doc>
3181+
3182+ </wadl:param>
3183+ <wadl:param style="query" required="false"
3184+ name="explicit">
3185+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3186+Explicit
3187+</wadl:doc>
3188+
3189+ </wadl:param>
3190+ </wadl:representation>
3191+ </wadl:request>
3192+
3193+ </wadl:method>
3194+ <wadl:method id="archive-newPackageUploader"
3195+ name="POST">
3196+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3197+<p>Add permisson for a person to upload a package to this archive.</p>
3198+<table class="rst-docutils field-list" frame="void" rules="none">
3199+<col class="field-name" />
3200+<col class="field-body" />
3201+<tbody valign="top">
3202+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson whom should be given permission.</td>
3203+</tr>
3204+<tr class="rst-field"><th class="rst-field-name" colspan="2">param source_package_name:</th></tr>
3205+<tr><td>&nbsp;</td><td class="rst-field-body">An ISourcePackageName or textual package
3206+name.</td>
3207+</tr>
3208+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">An IArchivePermission which is the newly-created
3209+permission.</td>
3210+</tr>
3211+</tbody>
3212+</table>
3213+
3214+</wadl:doc>
3215+ <wadl:request>
3216+ <wadl:representation
3217+ mediaType="application/x-www-form-urlencoded">
3218+ <wadl:param style="query" name="ws.op"
3219+ required="true"
3220+ fixed="newPackageUploader"/>
3221+ <wadl:param style="query" required="true"
3222+ name="person">
3223+
3224+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3225+ </wadl:param>
3226+ <wadl:param style="query" required="true"
3227+ name="source_package_name">
3228+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3229+Source Package Name
3230+</wadl:doc>
3231+
3232+ </wadl:param>
3233+ </wadl:representation>
3234+ </wadl:request>
3235+ <wadl:response>
3236+ <wadl:param name="Location" style="header">
3237+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_permission"/>
3238+ </wadl:param>
3239+
3240+ </wadl:response>
3241+ </wadl:method>
3242+ <wadl:method id="archive-deleteComponentUploader"
3243+ name="POST">
3244+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3245+<p>Revoke permission for the person to upload to the component.</p>
3246+<table class="rst-docutils field-list" frame="void" rules="none">
3247+<col class="field-name" />
3248+<col class="field-body" />
3249+<tbody valign="top">
3250+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson whose permission should be revoked.</td>
3251+</tr>
3252+<tr class="rst-field"><th class="rst-field-name" colspan="2">param component:</th></tr>
3253+<tr><td>&nbsp;</td><td class="rst-field-body">An IComponent or textual component name.</td>
3254+</tr>
3255+</tbody>
3256+</table>
3257+
3258+</wadl:doc>
3259+ <wadl:request>
3260+ <wadl:representation
3261+ mediaType="application/x-www-form-urlencoded">
3262+ <wadl:param style="query" name="ws.op"
3263+ required="true"
3264+ fixed="deleteComponentUploader"/>
3265+ <wadl:param style="query" required="true"
3266+ name="person">
3267+
3268+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3269+ </wadl:param>
3270+ <wadl:param style="query" required="true"
3271+ name="component_name">
3272+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3273+Component Name
3274+</wadl:doc>
3275+
3276+ </wadl:param>
3277+ </wadl:representation>
3278+ </wadl:request>
3279+
3280+ </wadl:method>
3281+ <wadl:method id="archive-newPackagesetUploader"
3282+ name="POST">
3283+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3284+<p>Add a package set based permission for a person.</p>
3285+<table class="rst-docutils field-list" frame="void" rules="none">
3286+<col class="field-name" />
3287+<col class="field-body" />
3288+<tbody valign="top">
3289+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson for whom you want to add permission.</td>
3290+</tr>
3291+<tr class="rst-field"><th class="rst-field-name" colspan="2">param packageset:</th></tr>
3292+<tr><td>&nbsp;</td><td class="rst-field-body">An IPackageset or a string package set name.</td>
3293+</tr>
3294+<tr class="rst-field"><th class="rst-field-name">param explicit:</th><td class="rst-field-body">True if the package set in question requires
3295+specialist skills for proper handling.</td>
3296+</tr>
3297+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">The new ArchivePermission, or the existing one if it
3298+already exists.</td>
3299+</tr>
3300+</tbody>
3301+</table>
3302+
3303+</wadl:doc>
3304+ <wadl:request>
3305+ <wadl:representation
3306+ mediaType="application/x-www-form-urlencoded">
3307+ <wadl:param style="query" name="ws.op"
3308+ required="true"
3309+ fixed="newPackagesetUploader"/>
3310+ <wadl:param style="query" required="true"
3311+ name="person">
3312+
3313+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3314+ </wadl:param>
3315+ <wadl:param style="query" required="true"
3316+ name="packageset">
3317+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3318+Package set
3319+</wadl:doc>
3320+
3321+ </wadl:param>
3322+ <wadl:param style="query" required="false"
3323+ name="explicit">
3324+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3325+Explicit
3326+</wadl:doc>
3327+
3328+ </wadl:param>
3329+ </wadl:representation>
3330+ </wadl:request>
3331+ <wadl:response>
3332+ <wadl:param name="Location" style="header">
3333+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_permission"/>
3334+ </wadl:param>
3335+
3336+ </wadl:response>
3337+ </wadl:method>
3338+ <wadl:method id="archive-newSubscription" name="POST">
3339+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3340+<p>Create a new subscribtion to this archive.</p>
3341+<p>Create an ArchiveSubscriber record which allows an IPerson to
3342+access a private repository.</p>
3343+<table class="rst-docutils field-list" frame="void" rules="none">
3344+<col class="field-name" />
3345+<col class="field-body" />
3346+<tbody valign="top">
3347+<tr class="rst-field"><th class="rst-field-name" colspan="2">param subscriber:</th></tr>
3348+<tr><td>&nbsp;</td><td class="rst-field-body">An IPerson who is allowed to access the
3349+repository for this archive.</td>
3350+</tr>
3351+<tr class="rst-field"><th class="rst-field-name" colspan="2">param registrant:</th></tr>
3352+<tr><td>&nbsp;</td><td class="rst-field-body">An IPerson who created this subscription.</td>
3353+</tr>
3354+<tr class="rst-field"><th class="rst-field-name" colspan="2">param date_expires:</th></tr>
3355+<tr><td>&nbsp;</td><td class="rst-field-body">When the subscription should expire; None if
3356+it should not expire (default).</td>
3357+</tr>
3358+<tr class="rst-field"><th class="rst-field-name" colspan="2">param description:</th></tr>
3359+<tr><td>&nbsp;</td><td class="rst-field-body">An option textual description of the subscription
3360+being created.</td>
3361+</tr>
3362+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">The IArchiveSubscriber that was created.</td>
3363+</tr>
3364+</tbody>
3365+</table>
3366+
3367+</wadl:doc>
3368+ <wadl:request>
3369+ <wadl:representation
3370+ mediaType="application/x-www-form-urlencoded">
3371+ <wadl:param style="query" name="ws.op"
3372+ required="true"
3373+ fixed="newSubscription"/>
3374+ <wadl:param style="query" required="true"
3375+ name="subscriber">
3376+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3377+<p>Subscriber</p>
3378+<p>The person who is subscribed.</p>
3379+
3380+</wadl:doc>
3381+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3382+ </wadl:param>
3383+ <wadl:param style="query" required="false"
3384+ type="xsd:dateTime"
3385+ name="date_expires">
3386+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3387+<p>Date of Expiration</p>
3388+<p>The timestamp when the subscription will expire.</p>
3389+
3390+</wadl:doc>
3391+
3392+ </wadl:param>
3393+ <wadl:param style="query" required="false"
3394+ name="description">
3395+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3396+<p>Description</p>
3397+<p>Free text describing this subscription.</p>
3398+
3399+</wadl:doc>
3400+
3401+ </wadl:param>
3402+ </wadl:representation>
3403+ </wadl:request>
3404+ <wadl:response>
3405+ <wadl:param name="Location" style="header">
3406+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_subscriber"/>
3407+ </wadl:param>
3408+
3409+ </wadl:response>
3410+ </wadl:method>
3411+ <wadl:method id="archive-newQueueAdmin" name="POST">
3412+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3413+<p>Add permission for a person to administer a distroseries queue.</p>
3414+<p>The supplied person will gain permission to administer the
3415+distroseries queue for packages in the supplied component.</p>
3416+<table class="rst-docutils field-list" frame="void" rules="none">
3417+<col class="field-name" />
3418+<col class="field-body" />
3419+<tbody valign="top">
3420+<tr class="rst-field"><th class="rst-field-name">param person:</th><td class="rst-field-body">An IPerson whom should be given permission.</td>
3421+</tr>
3422+<tr class="rst-field"><th class="rst-field-name" colspan="2">param component:</th></tr>
3423+<tr><td>&nbsp;</td><td class="rst-field-body">An IComponent or textual component name.</td>
3424+</tr>
3425+<tr class="rst-field"><th class="rst-field-name">return:</th><td class="rst-field-body">An IArchivePermission which is the newly-created
3426+permission.</td>
3427+</tr>
3428+</tbody>
3429+</table>
3430+
3431+</wadl:doc>
3432+ <wadl:request>
3433+ <wadl:representation
3434+ mediaType="application/x-www-form-urlencoded">
3435+ <wadl:param style="query" name="ws.op"
3436+ required="true"
3437+ fixed="newQueueAdmin"/>
3438+ <wadl:param style="query" required="true"
3439+ name="person">
3440+
3441+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3442+ </wadl:param>
3443+ <wadl:param style="query" required="true"
3444+ name="component_name">
3445+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3446+Component Name
3447+</wadl:doc>
3448+
3449+ </wadl:param>
3450+ </wadl:representation>
3451+ </wadl:request>
3452+ <wadl:response>
3453+ <wadl:param name="Location" style="header">
3454+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_permission"/>
3455+ </wadl:param>
3456+
3457+ </wadl:response>
3458+ </wadl:method>
3459+ </wadl:resource_type>
3460+
3461+
3462+ <wadl:representation mediaType="application/json"
3463+ id="archive-full">
3464+ <wadl:param style="plain" name="self_link" path="$['self_link']">
3465+ <wadl:doc>The canonical link to this resource.</wadl:doc>
3466+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
3467+ </wadl:param>
3468+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
3469+ <wadl:doc>
3470+ The link to the WADL description of this resource.
3471+ </wadl:doc>
3472+ <wadl:link/>
3473+ </wadl:param>
3474+ <wadl:param style="plain" name="http_etag" path="$['http_etag']">
3475+ <wadl:doc>
3476+ The value of the HTTP ETag for this resource.
3477+ </wadl:doc>
3478+ </wadl:param>
3479+ <wadl:param style="plain" required="true"
3480+ path="$['owner_link']" name="owner_link">
3481+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3482+<p>Owner</p>
3483+<p>The archive owner.</p>
3484+
3485+</wadl:doc>
3486+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3487+ </wadl:param>
3488+ <wadl:param style="plain" required="true"
3489+ path="$['displayname']" name="displayname">
3490+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3491+<p>Displayname</p>
3492+<p>Displayname for this archive.</p>
3493+
3494+</wadl:doc>
3495+
3496+ </wadl:param>
3497+ <wadl:param style="plain" required="true"
3498+ path="$['description']" name="description">
3499+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3500+<p>Archive contents description</p>
3501+<p>A short description of this archive's contents.</p>
3502+
3503+</wadl:doc>
3504+
3505+ </wadl:param>
3506+ <wadl:param style="plain" required="true"
3507+ path="$['dependencies_collection_link']"
3508+ name="dependencies_collection_link">
3509+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3510+Archive dependencies recorded for this archive.
3511+</wadl:doc>
3512+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive_dependency-page-resource"/>
3513+ </wadl:param>
3514+ <wadl:param style="plain" required="true"
3515+ path="$['name']" name="name">
3516+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3517+<p>Name</p>
3518+<p>The name of this archive.</p>
3519+
3520+</wadl:doc>
3521+
3522+ </wadl:param>
3523+ <wadl:param style="plain" required="true"
3524+ path="$['private']" name="private">
3525+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3526+<p>Private</p>
3527+<p>Whether the archive is private to the owner or not.</p>
3528+
3529+</wadl:doc>
3530+
3531+ </wadl:param>
3532+ <wadl:param style="plain" required="true"
3533+ path="$['distribution_link']"
3534+ name="distribution_link">
3535+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3536+The distribution that uses or is used by this archive.
3537+</wadl:doc>
3538+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#distribution"/>
3539+ </wadl:param>
3540+ <wadl:param style="plain" required="true"
3541+ path="$['signing_key_fingerprint']"
3542+ name="signing_key_fingerprint">
3543+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3544+<p>Archive signing key fingerprint</p>
3545+<p>A OpenPGP signing key fingerprint (40 chars) for this PPA or None if there is no signing key available.</p>
3546+
3547+</wadl:doc>
3548+
3549+ </wadl:param>
3550+ </wadl:representation>
3551+
3552+ <wadl:representation mediaType="application/json"
3553+ id="archive-diff">
3554+ <wadl:param style="plain" required="false"
3555+ path="$['owner_link']" name="owner_link">
3556+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3557+<p>Owner</p>
3558+<p>The archive owner.</p>
3559+
3560+</wadl:doc>
3561+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3562+ </wadl:param>
3563+ <wadl:param style="plain" required="false"
3564+ path="$['displayname']" name="displayname">
3565+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3566+<p>Displayname</p>
3567+<p>Displayname for this archive.</p>
3568+
3569+</wadl:doc>
3570+
3571+ </wadl:param>
3572+ <wadl:param style="plain" required="false"
3573+ path="$['description']" name="description">
3574+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3575+<p>Archive contents description</p>
3576+<p>A short description of this archive's contents.</p>
3577+
3578+</wadl:doc>
3579+
3580+ </wadl:param>
3581+ <wadl:param style="plain" required="false"
3582+ path="$['name']" name="name">
3583+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3584+<p>Name</p>
3585+<p>The name of this archive.</p>
3586+
3587+</wadl:doc>
3588+
3589+ </wadl:param>
3590+ <wadl:param style="plain" required="false"
3591+ path="$['private']" name="private">
3592+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3593+<p>Private</p>
3594+<p>Whether the archive is private to the owner or not.</p>
3595+
3596+</wadl:doc>
3597+
3598+ </wadl:param>
3599+ <wadl:param style="plain" required="false"
3600+ path="$['distribution_link']"
3601+ name="distribution_link">
3602+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3603+The distribution that uses or is used by this archive.
3604+</wadl:doc>
3605+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#distribution"/>
3606+ </wadl:param>
3607+ <wadl:param style="plain" required="false"
3608+ path="$['signing_key_fingerprint']"
3609+ name="signing_key_fingerprint">
3610+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3611+<p>Archive signing key fingerprint</p>
3612+<p>A OpenPGP signing key fingerprint (40 chars) for this PPA or None if there is no signing key available.</p>
3613+
3614+</wadl:doc>
3615+
3616+ </wadl:param>
3617+ </wadl:representation>
3618+
3619+ <!--Collection page for this type of entry-->
3620+ <wadl:resource_type id="archive-page-resource">
3621+ <wadl:method name="GET" id="archive-page-resource-get">
3622+ <wadl:response>
3623+ <wadl:representation href="#archive-page"/>
3624+ </wadl:response>
3625+ </wadl:method>
3626+ </wadl:resource_type>
3627+
3628+ <wadl:representation mediaType="application/json"
3629+ id="archive-page">
3630+
3631+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
3632+ <wadl:link/>
3633+ </wadl:param>
3634+
3635+ <wadl:param style="plain" name="total_size" path="$['total_size']" required="true"/>
3636+
3637+ <wadl:param style="plain" name="start" path="$['start']" required="true"/>
3638+
3639+ <wadl:param style="plain" name="next_collection_link" path="$['next_collection_link']">
3640+ <wadl:link resource_type="#archive-page-resource"/>
3641+ </wadl:param>
3642+
3643+ <wadl:param style="plain" name="prev_collection_link" path="$['prev_collection_link']">
3644+ <wadl:link resource_type="#archive-page-resource"/>
3645+ </wadl:param>
3646+
3647+ <wadl:param style="plain" name="entries" path="$['entries']" required="true"/>
3648+
3649+ <wadl:param style="plain" name="entry_links" path="$['entries'][*]['self_link']">
3650+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
3651+ </wadl:param>
3652+ </wadl:representation>
3653+
3654+
3655+
3656+ <wadl:resource_type id="binary_package_publishing_history">
3657+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3658+A binary package publishing record.
3659+</wadl:doc>
3660+ <wadl:method name="GET"
3661+ id="binary_package_publishing_history-get">
3662+ <wadl:response>
3663+ <wadl:representation
3664+ href="https://api.edge.launchpad.net/beta/#binary_package_publishing_history-full"/>
3665+ <wadl:representation
3666+ mediaType="application/xhtml+xml"
3667+ id="binary_package_publishing_history-xhtml"/>
3668+ <wadl:representation
3669+ mediaType="application/vd.sun.wadl+xml"
3670+ id="binary_package_publishing_history-wadl"/>
3671+ </wadl:response>
3672+ </wadl:method>
3673+
3674+ <wadl:method name="PUT"
3675+ id="binary_package_publishing_history-put">
3676+ <wadl:request>
3677+ <wadl:representation
3678+ href="https://api.edge.launchpad.net/beta/#binary_package_publishing_history-full"/>
3679+ </wadl:request>
3680+ </wadl:method>
3681+
3682+ <wadl:method name="PATCH"
3683+ id="binary_package_publishing_history-patch">
3684+ <wadl:request>
3685+ <wadl:representation
3686+ href="https://api.edge.launchpad.net/beta/#binary_package_publishing_history-diff"/>
3687+ </wadl:request>
3688+ </wadl:method>
3689+
3690+
3691+
3692+ </wadl:resource_type>
3693+
3694+
3695+ <wadl:representation mediaType="application/json"
3696+ id="binary_package_publishing_history-full">
3697+ <wadl:param style="plain" name="self_link" path="$['self_link']">
3698+ <wadl:doc>The canonical link to this resource.</wadl:doc>
3699+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#binary_package_publishing_history"/>
3700+ </wadl:param>
3701+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
3702+ <wadl:doc>
3703+ The link to the WADL description of this resource.
3704+ </wadl:doc>
3705+ <wadl:link/>
3706+ </wadl:param>
3707+ <wadl:param style="plain" name="http_etag" path="$['http_etag']">
3708+ <wadl:doc>
3709+ The value of the HTTP ETag for this resource.
3710+ </wadl:doc>
3711+ </wadl:param>
3712+ <wadl:param style="plain" required="true"
3713+ path="$['removal_comment']"
3714+ name="removal_comment">
3715+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3716+<p>Removal Comment</p>
3717+<p>Reason why this publication is going to be removed.</p>
3718+
3719+</wadl:doc>
3720+
3721+ </wadl:param>
3722+ <wadl:param style="plain" required="true"
3723+ path="$['distro_arch_series_link']"
3724+ name="distro_arch_series_link">
3725+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3726+<p>Distro Arch Series</p>
3727+<p>The distroarchseries being published into</p>
3728+
3729+</wadl:doc>
3730+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#distro_arch_series"/>
3731+ </wadl:param>
3732+ <wadl:param style="plain" required="true"
3733+ path="$['date_published']"
3734+ type="xsd:dateTime" name="date_published">
3735+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3736+<p>Date Published</p>
3737+<p>The date on which this record was published</p>
3738+
3739+</wadl:doc>
3740+
3741+ </wadl:param>
3742+ <wadl:param style="plain" required="true"
3743+ path="$['date_removed']"
3744+ type="xsd:dateTime" name="date_removed">
3745+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3746+<p>Date Removed</p>
3747+<p>The date on which this record was removed from the published set</p>
3748+
3749+</wadl:doc>
3750+
3751+ </wadl:param>
3752+ <wadl:param style="plain" required="true"
3753+ path="$['archive_link']"
3754+ name="archive_link">
3755+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3756+<p>Archive</p>
3757+<p>The context archive for this publication.</p>
3758+
3759+</wadl:doc>
3760+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#archive"/>
3761+ </wadl:param>
3762+ <wadl:param style="plain" required="true"
3763+ path="$['priority_name']"
3764+ name="priority_name">
3765+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3766+Priority Name
3767+</wadl:doc>
3768+
3769+ </wadl:param>
3770+ <wadl:param style="plain" required="true"
3771+ path="$['date_superseded']"
3772+ type="xsd:dateTime" name="date_superseded">
3773+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3774+<p>Date Superseded</p>
3775+<p>The date on which this record was marked superseded</p>
3776+
3777+</wadl:doc>
3778+
3779+ </wadl:param>
3780+ <wadl:param style="plain" required="true"
3781+ path="$['scheduled_deletion_date']"
3782+ type="xsd:dateTime"
3783+ name="scheduled_deletion_date">
3784+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3785+<p>Scheduled Deletion Date</p>
3786+<p>The date on which this record is scheduled for deletion</p>
3787+
3788+</wadl:doc>
3789+
3790+ </wadl:param>
3791+ <wadl:param style="plain" required="true"
3792+ path="$['date_made_pending']"
3793+ type="xsd:dateTime"
3794+ name="date_made_pending">
3795+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3796+<p>Date Made Pending</p>
3797+<p>The date on which this record was set as pending removal</p>
3798+
3799+</wadl:doc>
3800+
3801+ </wadl:param>
3802+ <wadl:param style="plain" required="true"
3803+ path="$['binary_package_version']"
3804+ name="binary_package_version">
3805+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3806+Binary Package Version
3807+</wadl:doc>
3808+
3809+ </wadl:param>
3810+ <wadl:param style="plain" required="true"
3811+ path="$['component_name']"
3812+ name="component_name">
3813+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3814+Component Name
3815+</wadl:doc>
3816+
3817+ </wadl:param>
3818+ <wadl:param style="plain" required="true"
3819+ path="$['status']" name="status">
3820+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3821+<p>Status</p>
3822+<p>The status of this publishing record</p>
3823+
3824+</wadl:doc>
3825+
3826+ <wadl:option value="Pending"/>
3827+ <wadl:option value="Published"/>
3828+ <wadl:option value="Superseded"/>
3829+ <wadl:option value="Deleted"/>
3830+ <wadl:option value="Obsolete"/>
3831+ </wadl:param>
3832+ <wadl:param style="plain" required="true"
3833+ path="$['display_name']"
3834+ name="display_name">
3835+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3836+<p>Display Name</p>
3837+<p>Text representation of the current record.</p>
3838+
3839+</wadl:doc>
3840+
3841+ </wadl:param>
3842+ <wadl:param style="plain" required="true"
3843+ path="$['pocket']" name="pocket">
3844+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3845+<p>Pocket</p>
3846+<p>The pocket into which this entry is published</p>
3847+
3848+</wadl:doc>
3849+
3850+ <wadl:option value="Release"/>
3851+ <wadl:option value="Security"/>
3852+ <wadl:option value="Updates"/>
3853+ <wadl:option value="Proposed"/>
3854+ <wadl:option value="Backports"/>
3855+ </wadl:param>
3856+ <wadl:param style="plain" required="true"
3857+ path="$['section_name']"
3858+ name="section_name">
3859+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3860+Section Name
3861+</wadl:doc>
3862+
3863+ </wadl:param>
3864+ <wadl:param style="plain" required="true"
3865+ path="$['binary_package_name']"
3866+ name="binary_package_name">
3867+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3868+Binary Package Name
3869+</wadl:doc>
3870+
3871+ </wadl:param>
3872+ <wadl:param style="plain" required="true"
3873+ path="$['date_created']"
3874+ type="xsd:dateTime" name="date_created">
3875+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3876+<p>Date Created</p>
3877+<p>The date on which this record was created</p>
3878+
3879+</wadl:doc>
3880+
3881+ </wadl:param>
3882+ <wadl:param style="plain" required="true"
3883+ path="$['removed_by_link']"
3884+ name="removed_by_link">
3885+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3886+<p>Removed By</p>
3887+<p>The Person responsible for the removal</p>
3888+
3889+</wadl:doc>
3890+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
3891+ </wadl:param>
3892+ </wadl:representation>
3893+
3894+ <wadl:representation mediaType="application/json"
3895+ id="binary_package_publishing_history-diff">
3896+ <wadl:param style="plain" required="false"
3897+ path="$['removal_comment']"
3898+ name="removal_comment">
3899+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3900+<p>Removal Comment</p>
3901+<p>Reason why this publication is going to be removed.</p>
3902+
3903+</wadl:doc>
3904+
3905+ </wadl:param>
3906+ <wadl:param style="plain" required="false"
3907+ path="$['distro_arch_series_link']"
3908+ name="distro_arch_series_link">
3909+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3910+<p>Distro Arch Series</p>
3911+<p>The distroarchseries being published into</p>
3912+
3913+</wadl:doc>
3914+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#distro_arch_series"/>
3915+ </wadl:param>
3916+ <wadl:param style="plain" required="false"
3917+ path="$['date_published']"
3918+ type="xsd:dateTime" name="date_published">
3919+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3920+<p>Date Published</p>
3921+<p>The date on which this record was published</p>
3922+
3923+</wadl:doc>
3924+
3925+ </wadl:param>
3926+ <wadl:param style="plain" required="false"
3927+ path="$['date_removed']"
3928+ type="xsd:dateTime" name="date_removed">
3929+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3930+<p>Date Removed</p>
3931+<p>The date on which this record was removed from the published set</p>
3932+
3933+</wadl:doc>
3934+
3935+ </wadl:param>
3936+ <wadl:param style="plain" required="false"
3937+ path="$['date_superseded']"
3938+ type="xsd:dateTime" name="date_superseded">
3939+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3940+<p>Date Superseded</p>
3941+<p>The date on which this record was marked superseded</p>
3942+
3943+</wadl:doc>
3944+
3945+ </wadl:param>
3946+ <wadl:param style="plain" required="false"
3947+ path="$['scheduled_deletion_date']"
3948+ type="xsd:dateTime"
3949+ name="scheduled_deletion_date">
3950+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3951+<p>Scheduled Deletion Date</p>
3952+<p>The date on which this record is scheduled for deletion</p>
3953+
3954+</wadl:doc>
3955+
3956+ </wadl:param>
3957+ <wadl:param style="plain" required="false"
3958+ path="$['date_made_pending']"
3959+ type="xsd:dateTime"
3960+ name="date_made_pending">
3961+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3962+<p>Date Made Pending</p>
3963+<p>The date on which this record was set as pending removal</p>
3964+
3965+</wadl:doc>
3966+
3967+ </wadl:param>
3968+ <wadl:param style="plain" required="false"
3969+ path="$['status']" name="status">
3970+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3971+<p>Status</p>
3972+<p>The status of this publishing record</p>
3973+
3974+</wadl:doc>
3975+
3976+ <wadl:option value="Pending"/>
3977+ <wadl:option value="Published"/>
3978+ <wadl:option value="Superseded"/>
3979+ <wadl:option value="Deleted"/>
3980+ <wadl:option value="Obsolete"/>
3981+ </wadl:param>
3982+ <wadl:param style="plain" required="false"
3983+ path="$['display_name']"
3984+ name="display_name">
3985+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3986+<p>Display Name</p>
3987+<p>Text representation of the current record.</p>
3988+
3989+</wadl:doc>
3990+
3991+ </wadl:param>
3992+ <wadl:param style="plain" required="false"
3993+ path="$['date_created']"
3994+ type="xsd:dateTime" name="date_created">
3995+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
3996+<p>Date Created</p>
3997+<p>The date on which this record was created</p>
3998+
3999+</wadl:doc>
4000+
4001+ </wadl:param>
4002+ <wadl:param style="plain" required="false"
4003+ path="$['removed_by_link']"
4004+ name="removed_by_link">
4005+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4006+<p>Removed By</p>
4007+<p>The Person responsible for the removal</p>
4008+
4009+</wadl:doc>
4010+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4011+ </wadl:param>
4012+ </wadl:representation>
4013+
4014+ <!--Collection page for this type of entry-->
4015+ <wadl:resource_type id="binary_package_publishing_history-page-resource">
4016+ <wadl:method name="GET"
4017+ id="binary_package_publishing_history-page-resource-get">
4018+ <wadl:response>
4019+ <wadl:representation
4020+ href="#binary_package_publishing_history-page"/>
4021+ </wadl:response>
4022+ </wadl:method>
4023+ </wadl:resource_type>
4024+
4025+ <wadl:representation mediaType="application/json"
4026+ id="binary_package_publishing_history-page">
4027+
4028+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
4029+ <wadl:link/>
4030+ </wadl:param>
4031+
4032+ <wadl:param style="plain" name="total_size" path="$['total_size']" required="true"/>
4033+
4034+ <wadl:param style="plain" name="start" path="$['start']" required="true"/>
4035+
4036+ <wadl:param style="plain" name="next_collection_link" path="$['next_collection_link']">
4037+ <wadl:link resource_type="#binary_package_publishing_history-page-resource"/>
4038+ </wadl:param>
4039+
4040+ <wadl:param style="plain" name="prev_collection_link" path="$['prev_collection_link']">
4041+ <wadl:link resource_type="#binary_package_publishing_history-page-resource"/>
4042+ </wadl:param>
4043+
4044+ <wadl:param style="plain" name="entries" path="$['entries']" required="true"/>
4045+
4046+ <wadl:param style="plain" name="entry_links" path="$['entries'][*]['self_link']">
4047+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#binary_package_publishing_history"/>
4048+ </wadl:param>
4049+ </wadl:representation>
4050+
4051+
4052+
4053+ <wadl:resource_type id="branch_merge_proposal">
4054+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4055+Branch merge proposals show intent of landing one branch on another.
4056+</wadl:doc>
4057+ <wadl:method name="GET" id="branch_merge_proposal-get">
4058+ <wadl:response>
4059+ <wadl:representation
4060+ href="https://api.edge.launchpad.net/beta/#branch_merge_proposal-full"/>
4061+ <wadl:representation
4062+ mediaType="application/xhtml+xml"
4063+ id="branch_merge_proposal-xhtml"/>
4064+ <wadl:representation
4065+ mediaType="application/vd.sun.wadl+xml"
4066+ id="branch_merge_proposal-wadl"/>
4067+ </wadl:response>
4068+ </wadl:method>
4069+
4070+ <wadl:method name="PUT" id="branch_merge_proposal-put">
4071+ <wadl:request>
4072+ <wadl:representation
4073+ href="https://api.edge.launchpad.net/beta/#branch_merge_proposal-full"/>
4074+ </wadl:request>
4075+ </wadl:method>
4076+
4077+ <wadl:method name="PATCH"
4078+ id="branch_merge_proposal-patch">
4079+ <wadl:request>
4080+ <wadl:representation
4081+ href="https://api.edge.launchpad.net/beta/#branch_merge_proposal-diff"/>
4082+ </wadl:request>
4083+ </wadl:method>
4084+
4085+
4086+
4087+ <wadl:method id="branch_merge_proposal-getComment"
4088+ name="GET">
4089+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4090+Return the CodeReviewComment with the specified ID.
4091+</wadl:doc>
4092+ <wadl:request>
4093+
4094+ <wadl:param style="query" name="ws.op"
4095+ required="true" fixed="getComment"/>
4096+ <wadl:param style="query" required="true"
4097+ name="id">
4098+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4099+A CodeReviewComment ID.
4100+</wadl:doc>
4101+
4102+ </wadl:param>
4103+
4104+ </wadl:request>
4105+ <wadl:response>
4106+
4107+ <wadl:representation
4108+ href="https://api.edge.launchpad.net/beta/#code_review_comment-full"/>
4109+ </wadl:response>
4110+ </wadl:method>
4111+ <wadl:method id="branch_merge_proposal-nominateReviewer"
4112+ name="POST">
4113+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4114+<p>Set the specified person as a reviewer.</p>
4115+<p>If they are not already a reviewer, a vote is created. Otherwise,
4116+the details are updated.</p>
4117+
4118+</wadl:doc>
4119+ <wadl:request>
4120+ <wadl:representation
4121+ mediaType="application/x-www-form-urlencoded">
4122+ <wadl:param style="query" name="ws.op"
4123+ required="true"
4124+ fixed="nominateReviewer"/>
4125+ <wadl:param style="query" required="false"
4126+ name="review_type">
4127+
4128+
4129+ </wadl:param>
4130+ <wadl:param style="query" required="true"
4131+ name="reviewer">
4132+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4133+A reviewer.
4134+</wadl:doc>
4135+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4136+ </wadl:param>
4137+ </wadl:representation>
4138+ </wadl:request>
4139+ <wadl:response>
4140+
4141+ <wadl:representation
4142+ href="https://api.edge.launchpad.net/beta/#code_review_vote_reference-full"/>
4143+ </wadl:response>
4144+ </wadl:method>
4145+ <wadl:method id="branch_merge_proposal-updatePreviewDiff"
4146+ name="POST">
4147+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4148+<p>Update the preview diff for this proposal.</p>
4149+<p>If there is not an existing preview diff, one will be created.</p>
4150+<table class="rst-docutils field-list" frame="void" rules="none">
4151+<col class="field-name" />
4152+<col class="field-body" />
4153+<tbody valign="top">
4154+<tr class="rst-field"><th class="rst-field-name" colspan="2">param diff_content:</th></tr>
4155+<tr><td>&nbsp;</td><td class="rst-field-body">The raw bytes of the diff content to be put in
4156+the librarian.</td>
4157+</tr>
4158+<tr class="rst-field"><th class="rst-field-name" colspan="2">param diff_stat:</th></tr>
4159+<tr><td>&nbsp;</td><td class="rst-field-body">Text describing the files added, remove or modified.</td>
4160+</tr>
4161+<tr class="rst-field"><th class="rst-field-name" colspan="2">param source_revision_id:</th></tr>
4162+<tr><td>&nbsp;</td><td class="rst-field-body">The revision id that was used from the
4163+source branch.</td>
4164+</tr>
4165+<tr class="rst-field"><th class="rst-field-name" colspan="2">param target_revision_id:</th></tr>
4166+<tr><td>&nbsp;</td><td class="rst-field-body">The revision id that was used from the
4167+target branch.</td>
4168+</tr>
4169+<tr class="rst-field"><th class="rst-field-name" colspan="2">param prerequisite_revision_id:</th></tr>
4170+<tr><td>&nbsp;</td><td class="rst-field-body">The revision id that was used from the
4171+prerequisite branch.</td>
4172+</tr>
4173+<tr class="rst-field"><th class="rst-field-name" colspan="2">param conflicts:</th></tr>
4174+<tr><td>&nbsp;</td><td class="rst-field-body">Text describing the conflicts if any.</td>
4175+</tr>
4176+</tbody>
4177+</table>
4178+
4179+</wadl:doc>
4180+ <wadl:request>
4181+ <wadl:representation
4182+ mediaType="multipart/form-data">
4183+ <wadl:param style="query" name="ws.op"
4184+ required="true"
4185+ fixed="updatePreviewDiff"/>
4186+ <wadl:param style="query" required="false"
4187+ name="conflicts">
4188+
4189+
4190+ </wadl:param>
4191+ <wadl:param style="query" required="true"
4192+ name="target_revision_id">
4193+
4194+
4195+ </wadl:param>
4196+ <wadl:param style="query" required="true"
4197+ type="binary" name="diff_content">
4198+
4199+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#HostedFile"/>
4200+ </wadl:param>
4201+ <wadl:param style="query" required="true"
4202+ name="source_revision_id">
4203+
4204+
4205+ </wadl:param>
4206+ <wadl:param style="query" required="false"
4207+ name="prerequisite_revision_id">
4208+
4209+
4210+ </wadl:param>
4211+ </wadl:representation>
4212+ </wadl:request>
4213+
4214+ </wadl:method>
4215+ <wadl:method id="branch_merge_proposal-createComment"
4216+ name="POST">
4217+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4218+<p>Create an ICodeReviewComment associated with this merge proposal.</p>
4219+<table class="rst-docutils field-list" frame="void" rules="none">
4220+<col class="field-name" />
4221+<col class="field-body" />
4222+<tbody valign="top">
4223+<tr class="rst-field"><th class="rst-field-name">param owner:</th><td class="rst-field-body">The person who the message is from.</td>
4224+</tr>
4225+<tr class="rst-field"><th class="rst-field-name">param subject:</th><td class="rst-field-body">The subject line to use for the message.</td>
4226+</tr>
4227+<tr class="rst-field"><th class="rst-field-name">param content:</th><td class="rst-field-body">The text to use for the message content. If
4228+unspecified, the text of the merge proposal is used.</td>
4229+</tr>
4230+<tr class="rst-field"><th class="rst-field-name">param parent:</th><td class="rst-field-body">The previous CodeReviewComment in the thread. If
4231+unspecified, the root message is used.</td>
4232+</tr>
4233+</tbody>
4234+</table>
4235+
4236+</wadl:doc>
4237+ <wadl:request>
4238+ <wadl:representation
4239+ mediaType="application/x-www-form-urlencoded">
4240+ <wadl:param style="query" name="ws.op"
4241+ required="true"
4242+ fixed="createComment"/>
4243+ <wadl:param style="query" required="false"
4244+ name="review_type">
4245+
4246+
4247+ </wadl:param>
4248+ <wadl:param style="query" required="false"
4249+ name="vote">
4250+
4251+
4252+ <wadl:option value="Approve"/>
4253+ <wadl:option value="Needs Fixing"/>
4254+ <wadl:option value="Needs Information"/>
4255+ <wadl:option value="Abstain"/>
4256+ <wadl:option value="Disapprove"/>
4257+ <wadl:option value="Resubmit"/>
4258+ </wadl:param>
4259+ <wadl:param style="query" required="false"
4260+ name="content">
4261+
4262+
4263+ </wadl:param>
4264+ <wadl:param style="query" required="false"
4265+ name="parent">
4266+
4267+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#code_review_comment"/>
4268+ </wadl:param>
4269+ <wadl:param style="query" required="true"
4270+ name="subject">
4271+
4272+
4273+ </wadl:param>
4274+ </wadl:representation>
4275+ </wadl:request>
4276+ <wadl:response>
4277+ <wadl:param name="Location" style="header">
4278+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#code_review_comment"/>
4279+ </wadl:param>
4280+
4281+ </wadl:response>
4282+ </wadl:method>
4283+ <wadl:method id="branch_merge_proposal-setStatus"
4284+ name="POST">
4285+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4286+<p>Set the state of the merge proposal to the specified status.</p>
4287+<table class="rst-docutils field-list" frame="void" rules="none">
4288+<col class="field-name" />
4289+<col class="field-body" />
4290+<tbody valign="top">
4291+<tr class="rst-field"><th class="rst-field-name">param status:</th><td class="rst-field-body">The new status of the merge proposal.</td>
4292+</tr>
4293+<tr class="rst-field"><th class="rst-field-name">param user:</th><td class="rst-field-body">The user making the change.</td>
4294+</tr>
4295+<tr class="rst-field"><th class="rst-field-name" colspan="2">param revision_id:</th></tr>
4296+<tr><td>&nbsp;</td><td class="rst-field-body">The revno to provide to the underlying status
4297+change method.</td>
4298+</tr>
4299+</tbody>
4300+</table>
4301+
4302+</wadl:doc>
4303+ <wadl:request>
4304+ <wadl:representation
4305+ mediaType="application/x-www-form-urlencoded">
4306+ <wadl:param style="query" name="ws.op"
4307+ required="true" fixed="setStatus"/>
4308+ <wadl:param style="query" required="true"
4309+ name="status">
4310+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4311+The new status of the merge proposal.
4312+</wadl:doc>
4313+
4314+ <wadl:option value="Work in progress"/>
4315+ <wadl:option value="Needs review"/>
4316+ <wadl:option value="Approved"/>
4317+ <wadl:option value="Rejected"/>
4318+ <wadl:option value="Merged"/>
4319+ <wadl:option value="Code failed to merge"/>
4320+ <wadl:option value="Queued"/>
4321+ <wadl:option value="Superseded"/>
4322+ </wadl:param>
4323+ <wadl:param style="query" required="false"
4324+ name="revno">
4325+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4326+An optional parameter for specifying the revision of the branch for the status change.
4327+</wadl:doc>
4328+
4329+ </wadl:param>
4330+ </wadl:representation>
4331+ </wadl:request>
4332+
4333+ </wadl:method>
4334+ </wadl:resource_type>
4335+
4336+
4337+ <wadl:representation mediaType="application/json"
4338+ id="branch_merge_proposal-full">
4339+ <wadl:param style="plain" name="self_link" path="$['self_link']">
4340+ <wadl:doc>The canonical link to this resource.</wadl:doc>
4341+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch_merge_proposal"/>
4342+ </wadl:param>
4343+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
4344+ <wadl:doc>
4345+ The link to the WADL description of this resource.
4346+ </wadl:doc>
4347+ <wadl:link/>
4348+ </wadl:param>
4349+ <wadl:param style="plain" name="http_etag" path="$['http_etag']">
4350+ <wadl:doc>
4351+ The value of the HTTP ETag for this resource.
4352+ </wadl:doc>
4353+ </wadl:param>
4354+ <wadl:param style="plain" required="true"
4355+ path="$['queuer_link']" name="queuer_link">
4356+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4357+<p>Queuer</p>
4358+<p>The person that queued up the branch.</p>
4359+
4360+</wadl:doc>
4361+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4362+ </wadl:param>
4363+ <wadl:param style="plain" required="true"
4364+ path="$['source_branch_link']"
4365+ name="source_branch_link">
4366+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4367+<p>Source Branch</p>
4368+<p>The branch that has code to land.</p>
4369+
4370+</wadl:doc>
4371+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch"/>
4372+ </wadl:param>
4373+ <wadl:param style="plain" required="true"
4374+ path="$['queue_status']"
4375+ name="queue_status">
4376+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4377+<p>Status</p>
4378+<p>The current state of the proposal.</p>
4379+
4380+</wadl:doc>
4381+
4382+ <wadl:option value="Work in progress"/>
4383+ <wadl:option value="Needs review"/>
4384+ <wadl:option value="Approved"/>
4385+ <wadl:option value="Rejected"/>
4386+ <wadl:option value="Merged"/>
4387+ <wadl:option value="Code failed to merge"/>
4388+ <wadl:option value="Queued"/>
4389+ <wadl:option value="Superseded"/>
4390+ </wadl:param>
4391+ <wadl:param style="plain" required="true"
4392+ path="$['private']" name="private">
4393+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4394+<p>Proposal is confidential</p>
4395+<p>If True, this proposal is visible only to subscribers.</p>
4396+
4397+</wadl:doc>
4398+
4399+ </wadl:param>
4400+ <wadl:param style="plain" required="true"
4401+ path="$['queued_revno']"
4402+ name="queued_revno">
4403+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4404+<p>Queued Revision ID</p>
4405+<p>The revision id that has been queued for landing.</p>
4406+
4407+</wadl:doc>
4408+
4409+ </wadl:param>
4410+ <wadl:param style="plain" required="true"
4411+ path="$['reviewer_link']"
4412+ name="reviewer_link">
4413+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4414+<p>Review person or team</p>
4415+<p>The person that accepted (or rejected) the code for merging.</p>
4416+
4417+</wadl:doc>
4418+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4419+ </wadl:param>
4420+ <wadl:param style="plain" required="true"
4421+ path="$['registrant_link']"
4422+ name="registrant_link">
4423+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4424+<p>Person</p>
4425+<p>The person who registered the landing target.</p>
4426+
4427+</wadl:doc>
4428+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4429+ </wadl:param>
4430+ <wadl:param style="plain" required="true"
4431+ path="$['votes_collection_link']"
4432+ name="votes_collection_link">
4433+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4434+The votes cast or expected for this proposal
4435+</wadl:doc>
4436+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#code_review_vote_reference-page-resource"/>
4437+ </wadl:param>
4438+ <wadl:param style="plain" required="true"
4439+ path="$['target_branch_link']"
4440+ name="target_branch_link">
4441+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4442+<p>Target Branch</p>
4443+<p>The branch that the source branch will be merged into.</p>
4444+
4445+</wadl:doc>
4446+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch"/>
4447+ </wadl:param>
4448+ <wadl:param style="plain" required="true"
4449+ path="$['date_review_requested']"
4450+ type="xsd:dateTime"
4451+ name="date_review_requested">
4452+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4453+Date Review Requested
4454+</wadl:doc>
4455+
4456+ </wadl:param>
4457+ <wadl:param style="plain" required="true"
4458+ path="$['preview_diff_link']"
4459+ name="preview_diff_link">
4460+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4461+The current diff of the source branch against the target branch.
4462+</wadl:doc>
4463+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#preview_diff"/>
4464+ </wadl:param>
4465+ <wadl:param style="plain" required="true"
4466+ path="$['commit_message']"
4467+ name="commit_message">
4468+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4469+<p>Commit Message</p>
4470+<p>The commit message that should be used when merging the source branch.</p>
4471+
4472+</wadl:doc>
4473+
4474+ </wadl:param>
4475+ <wadl:param style="plain" required="true"
4476+ path="$['supersedes_link']"
4477+ name="supersedes_link">
4478+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4479+<p>Supersedes</p>
4480+<p>The branch merge proposal that this one supersedes.</p>
4481+
4482+</wadl:doc>
4483+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch_merge_proposal"/>
4484+ </wadl:param>
4485+ <wadl:param style="plain" required="true"
4486+ path="$['queue_position']"
4487+ name="queue_position">
4488+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4489+<p>Queue Position</p>
4490+<p>The position in the queue.</p>
4491+
4492+</wadl:doc>
4493+
4494+ </wadl:param>
4495+ <wadl:param style="plain" required="true"
4496+ path="$['prerequisite_branch_link']"
4497+ name="prerequisite_branch_link">
4498+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4499+<p>Dependent Branch</p>
4500+<p>The branch that the source branch branched from. If this is the same as the target branch, then leave this field blank.</p>
4501+
4502+</wadl:doc>
4503+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch"/>
4504+ </wadl:param>
4505+ <wadl:param style="plain" required="true"
4506+ path="$['date_merged']"
4507+ type="xsd:dateTime" name="date_merged">
4508+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4509+<p>Date Merged</p>
4510+<p>The date that the source branch was merged into the target branch</p>
4511+
4512+</wadl:doc>
4513+
4514+ </wadl:param>
4515+ <wadl:param style="plain" required="true"
4516+ path="$['reviewed_revno']"
4517+ name="reviewed_revno">
4518+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4519+The revision id that has been approved by the reviewer.
4520+</wadl:doc>
4521+
4522+ </wadl:param>
4523+ <wadl:param style="plain" required="true"
4524+ path="$['all_comments_collection_link']"
4525+ name="all_comments_collection_link">
4526+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4527+All messages discussing this merge proposal
4528+</wadl:doc>
4529+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#code_review_comment-page-resource"/>
4530+ </wadl:param>
4531+ <wadl:param style="plain" required="true"
4532+ path="$['address']" name="address">
4533+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4534+<p>The email address for this proposal.</p>
4535+<p>Any emails sent to this address will resultin comments being added.</p>
4536+
4537+</wadl:doc>
4538+
4539+ </wadl:param>
4540+ <wadl:param style="plain" required="true"
4541+ path="$['date_queued']"
4542+ type="xsd:dateTime" name="date_queued">
4543+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4544+Date Queued
4545+</wadl:doc>
4546+
4547+ </wadl:param>
4548+ <wadl:param style="plain" required="true"
4549+ path="$['date_reviewed']"
4550+ type="xsd:dateTime" name="date_reviewed">
4551+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4552+Date Reviewed
4553+</wadl:doc>
4554+
4555+ </wadl:param>
4556+ <wadl:param style="plain" required="true"
4557+ path="$['merged_revno']"
4558+ name="merged_revno">
4559+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4560+<p>Merged Revision Number</p>
4561+<p>The revision number on the target branch which contains the merge from the source branch.</p>
4562+
4563+</wadl:doc>
4564+
4565+ </wadl:param>
4566+ <wadl:param style="plain" required="true"
4567+ path="$['superseded_by_link']"
4568+ name="superseded_by_link">
4569+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4570+<p>Superseded By</p>
4571+<p>The branch merge proposal that supersedes this one.</p>
4572+
4573+</wadl:doc>
4574+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch_merge_proposal"/>
4575+ </wadl:param>
4576+ <wadl:param style="plain" required="true"
4577+ path="$['date_created']"
4578+ type="xsd:dateTime" name="date_created">
4579+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4580+Date Created
4581+</wadl:doc>
4582+
4583+ </wadl:param>
4584+ <wadl:param style="plain" required="true"
4585+ path="$['merge_reporter_link']"
4586+ name="merge_reporter_link">
4587+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4588+<p>Merge Reporter</p>
4589+<p>The user that marked the branch as merged.</p>
4590+
4591+</wadl:doc>
4592+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4593+ </wadl:param>
4594+ </wadl:representation>
4595+
4596+ <wadl:representation mediaType="application/json"
4597+ id="branch_merge_proposal-diff">
4598+ <wadl:param style="plain" required="false"
4599+ path="$['commit_message']"
4600+ name="commit_message">
4601+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4602+<p>Commit Message</p>
4603+<p>The commit message that should be used when merging the source branch.</p>
4604+
4605+</wadl:doc>
4606+
4607+ </wadl:param>
4608+ <wadl:param style="plain" required="false"
4609+ path="$['reviewed_revno']"
4610+ name="reviewed_revno">
4611+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4612+The revision id that has been approved by the reviewer.
4613+</wadl:doc>
4614+
4615+ </wadl:param>
4616+ </wadl:representation>
4617+
4618+ <!--Collection page for this type of entry-->
4619+ <wadl:resource_type id="branch_merge_proposal-page-resource">
4620+ <wadl:method name="GET"
4621+ id="branch_merge_proposal-page-resource-get">
4622+ <wadl:response>
4623+ <wadl:representation
4624+ href="#branch_merge_proposal-page"/>
4625+ </wadl:response>
4626+ </wadl:method>
4627+ </wadl:resource_type>
4628+
4629+ <wadl:representation mediaType="application/json"
4630+ id="branch_merge_proposal-page">
4631+
4632+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
4633+ <wadl:link/>
4634+ </wadl:param>
4635+
4636+ <wadl:param style="plain" name="total_size" path="$['total_size']" required="true"/>
4637+
4638+ <wadl:param style="plain" name="start" path="$['start']" required="true"/>
4639+
4640+ <wadl:param style="plain" name="next_collection_link" path="$['next_collection_link']">
4641+ <wadl:link resource_type="#branch_merge_proposal-page-resource"/>
4642+ </wadl:param>
4643+
4644+ <wadl:param style="plain" name="prev_collection_link" path="$['prev_collection_link']">
4645+ <wadl:link resource_type="#branch_merge_proposal-page-resource"/>
4646+ </wadl:param>
4647+
4648+ <wadl:param style="plain" name="entries" path="$['entries']" required="true"/>
4649+
4650+ <wadl:param style="plain" name="entry_links" path="$['entries'][*]['self_link']">
4651+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch_merge_proposal"/>
4652+ </wadl:param>
4653+ </wadl:representation>
4654+
4655+
4656+
4657+ <wadl:resource_type id="branch_subscription">
4658+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4659+The relationship between a person and a branch.
4660+</wadl:doc>
4661+ <wadl:method name="GET" id="branch_subscription-get">
4662+ <wadl:response>
4663+ <wadl:representation
4664+ href="https://api.edge.launchpad.net/beta/#branch_subscription-full"/>
4665+ <wadl:representation
4666+ mediaType="application/xhtml+xml"
4667+ id="branch_subscription-xhtml"/>
4668+ <wadl:representation
4669+ mediaType="application/vd.sun.wadl+xml"
4670+ id="branch_subscription-wadl"/>
4671+ </wadl:response>
4672+ </wadl:method>
4673+
4674+ <wadl:method name="PUT" id="branch_subscription-put">
4675+ <wadl:request>
4676+ <wadl:representation
4677+ href="https://api.edge.launchpad.net/beta/#branch_subscription-full"/>
4678+ </wadl:request>
4679+ </wadl:method>
4680+
4681+ <wadl:method name="PATCH"
4682+ id="branch_subscription-patch">
4683+ <wadl:request>
4684+ <wadl:representation
4685+ href="https://api.edge.launchpad.net/beta/#branch_subscription-diff"/>
4686+ </wadl:request>
4687+ </wadl:method>
4688+
4689+
4690+
4691+ </wadl:resource_type>
4692+
4693+
4694+ <wadl:representation mediaType="application/json"
4695+ id="branch_subscription-full">
4696+ <wadl:param style="plain" name="self_link" path="$['self_link']">
4697+ <wadl:doc>The canonical link to this resource.</wadl:doc>
4698+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch_subscription"/>
4699+ </wadl:param>
4700+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
4701+ <wadl:doc>
4702+ The link to the WADL description of this resource.
4703+ </wadl:doc>
4704+ <wadl:link/>
4705+ </wadl:param>
4706+ <wadl:param style="plain" name="http_etag" path="$['http_etag']">
4707+ <wadl:doc>
4708+ The value of the HTTP ETag for this resource.
4709+ </wadl:doc>
4710+ </wadl:param>
4711+ <wadl:param style="plain" required="true"
4712+ path="$['notification_level']"
4713+ name="notification_level">
4714+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4715+<p>Notification Level</p>
4716+<p>Attribute notifications are sent when branch details are changed such as lifecycle status and name. Revision notifications are generated when new branch revisions are found due to the branch being updated through either pushes to the hosted branches or the mirrored branches being updated.</p>
4717+
4718+</wadl:doc>
4719+
4720+ <wadl:option value="No email"/>
4721+ <wadl:option value="Branch attribute notifications only"/>
4722+ <wadl:option value="Branch revision notifications only"/>
4723+ <wadl:option value="Branch attribute and revision notifications"/>
4724+ </wadl:param>
4725+ <wadl:param style="plain" required="true"
4726+ path="$['max_diff_lines']"
4727+ name="max_diff_lines">
4728+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4729+<p>Generated Diff Size Limit</p>
4730+<p>Diffs greater than the specified number of lines will not be sent to the subscriber. The subscriber will still receive an email with the new revision details even if the diff is larger than the specified number of lines.</p>
4731+
4732+</wadl:doc>
4733+
4734+ <wadl:option value="Don't send diffs"/>
4735+ <wadl:option value="500 lines"/>
4736+ <wadl:option value="1000 lines"/>
4737+ <wadl:option value="5000 lines"/>
4738+ <wadl:option value="Send entire diff"/>
4739+ </wadl:param>
4740+ <wadl:param style="plain" required="true"
4741+ path="$['review_level']"
4742+ name="review_level">
4743+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4744+<p>Code review Level</p>
4745+<p>Control the kind of review activity that triggers notifications.</p>
4746+
4747+</wadl:doc>
4748+
4749+ <wadl:option value="No email"/>
4750+ <wadl:option value="Status changes only"/>
4751+ <wadl:option value="Email about all changes"/>
4752+ </wadl:param>
4753+ <wadl:param style="plain" required="true"
4754+ path="$['person_link']" name="person_link">
4755+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4756+<p>Person</p>
4757+<p>Enter the launchpad id, or email address of the person you wish to subscribe to this branch. If you are unsure, use the &quot;Choose...&quot; option to find the person in Launchpad. You can only subscribe someone who is a registered user of the system.</p>
4758+
4759+</wadl:doc>
4760+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4761+ </wadl:param>
4762+ <wadl:param style="plain" required="true"
4763+ path="$['branch_link']" name="branch_link">
4764+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4765+Branch ID
4766+</wadl:doc>
4767+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch"/>
4768+ </wadl:param>
4769+ </wadl:representation>
4770+
4771+ <wadl:representation mediaType="application/json"
4772+ id="branch_subscription-diff">
4773+ <wadl:param style="plain" required="false"
4774+ path="$['notification_level']"
4775+ name="notification_level">
4776+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4777+<p>Notification Level</p>
4778+<p>Attribute notifications are sent when branch details are changed such as lifecycle status and name. Revision notifications are generated when new branch revisions are found due to the branch being updated through either pushes to the hosted branches or the mirrored branches being updated.</p>
4779+
4780+</wadl:doc>
4781+
4782+ <wadl:option value="No email"/>
4783+ <wadl:option value="Branch attribute notifications only"/>
4784+ <wadl:option value="Branch revision notifications only"/>
4785+ <wadl:option value="Branch attribute and revision notifications"/>
4786+ </wadl:param>
4787+ <wadl:param style="plain" required="false"
4788+ path="$['max_diff_lines']"
4789+ name="max_diff_lines">
4790+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4791+<p>Generated Diff Size Limit</p>
4792+<p>Diffs greater than the specified number of lines will not be sent to the subscriber. The subscriber will still receive an email with the new revision details even if the diff is larger than the specified number of lines.</p>
4793+
4794+</wadl:doc>
4795+
4796+ <wadl:option value="Don't send diffs"/>
4797+ <wadl:option value="500 lines"/>
4798+ <wadl:option value="1000 lines"/>
4799+ <wadl:option value="5000 lines"/>
4800+ <wadl:option value="Send entire diff"/>
4801+ </wadl:param>
4802+ <wadl:param style="plain" required="false"
4803+ path="$['review_level']"
4804+ name="review_level">
4805+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4806+<p>Code review Level</p>
4807+<p>Control the kind of review activity that triggers notifications.</p>
4808+
4809+</wadl:doc>
4810+
4811+ <wadl:option value="No email"/>
4812+ <wadl:option value="Status changes only"/>
4813+ <wadl:option value="Email about all changes"/>
4814+ </wadl:param>
4815+ </wadl:representation>
4816+
4817+ <!--Collection page for this type of entry-->
4818+ <wadl:resource_type id="branch_subscription-page-resource">
4819+ <wadl:method name="GET"
4820+ id="branch_subscription-page-resource-get">
4821+ <wadl:response>
4822+ <wadl:representation
4823+ href="#branch_subscription-page"/>
4824+ </wadl:response>
4825+ </wadl:method>
4826+ </wadl:resource_type>
4827+
4828+ <wadl:representation mediaType="application/json"
4829+ id="branch_subscription-page">
4830+
4831+ <wadl:param style="plain" name="resource_type_link" path="$['resource_type_link']">
4832+ <wadl:link/>
4833+ </wadl:param>
4834+
4835+ <wadl:param style="plain" name="total_size" path="$['total_size']" required="true"/>
4836+
4837+ <wadl:param style="plain" name="start" path="$['start']" required="true"/>
4838+
4839+ <wadl:param style="plain" name="next_collection_link" path="$['next_collection_link']">
4840+ <wadl:link resource_type="#branch_subscription-page-resource"/>
4841+ </wadl:param>
4842+
4843+ <wadl:param style="plain" name="prev_collection_link" path="$['prev_collection_link']">
4844+ <wadl:link resource_type="#branch_subscription-page-resource"/>
4845+ </wadl:param>
4846+
4847+ <wadl:param style="plain" name="entries" path="$['entries']" required="true"/>
4848+
4849+ <wadl:param style="plain" name="entry_links" path="$['entries'][*]['self_link']">
4850+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#branch_subscription"/>
4851+ </wadl:param>
4852+ </wadl:representation>
4853+
4854+
4855+
4856+ <wadl:resource_type id="branch">
4857+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4858+A Bazaar branch.
4859+</wadl:doc>
4860+ <wadl:method name="GET" id="branch-get">
4861+ <wadl:response>
4862+ <wadl:representation
4863+ href="https://api.edge.launchpad.net/beta/#branch-full"/>
4864+ <wadl:representation
4865+ mediaType="application/xhtml+xml" id="branch-xhtml"/>
4866+ <wadl:representation
4867+ mediaType="application/vd.sun.wadl+xml" id="branch-wadl"/>
4868+ </wadl:response>
4869+ </wadl:method>
4870+
4871+ <wadl:method name="PUT" id="branch-put">
4872+ <wadl:request>
4873+ <wadl:representation
4874+ href="https://api.edge.launchpad.net/beta/#branch-full"/>
4875+ </wadl:request>
4876+ </wadl:method>
4877+
4878+ <wadl:method name="PATCH" id="branch-patch">
4879+ <wadl:request>
4880+ <wadl:representation
4881+ href="https://api.edge.launchpad.net/beta/#branch-diff"/>
4882+ </wadl:request>
4883+ </wadl:method>
4884+
4885+
4886+
4887+ <wadl:method id="branch-getSubscription" name="GET">
4888+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4889+Return the BranchSubscription for this person.
4890+</wadl:doc>
4891+ <wadl:request>
4892+
4893+ <wadl:param style="query" name="ws.op"
4894+ required="true"
4895+ fixed="getSubscription"/>
4896+ <wadl:param style="query" required="true"
4897+ name="person">
4898+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4899+The person to unsubscribe
4900+</wadl:doc>
4901+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4902+ </wadl:param>
4903+
4904+ </wadl:request>
4905+ <wadl:response>
4906+
4907+ <wadl:representation
4908+ href="https://api.edge.launchpad.net/beta/#branch_subscription-full"/>
4909+ </wadl:response>
4910+ </wadl:method>
4911+ <wadl:method id="branch-isPersonTrustedReviewer"
4912+ name="GET">
4913+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4914+<p>Return true if the reviewer is a trusted reviewer.</p>
4915+<p>The reviewer is trusted if they are either own the branch, or are in
4916+the team that owns the branch, or they are in the review team for the
4917+branch.</p>
4918+
4919+</wadl:doc>
4920+ <wadl:request>
4921+
4922+ <wadl:param style="query" name="ws.op"
4923+ required="true"
4924+ fixed="isPersonTrustedReviewer"/>
4925+ <wadl:param style="query" required="true"
4926+ name="reviewer">
4927+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4928+A person for which the reviewer status is in question.
4929+</wadl:doc>
4930+ <wadl:link resource_type="https://api.edge.launchpad.net/beta/#person"/>
4931+ </wadl:param>
4932+
4933+ </wadl:request>
4934+
4935+ </wadl:method>
4936+ <wadl:method id="branch-getMergeProposals" name="GET">
4937+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4938+<p>Returns all merge proposals of a given status.</p>
4939+<table class="rst-docutils field-list" frame="void" rules="none">
4940+<col class="field-name" />
4941+<col class="field-body" />
4942+<tbody valign="top">
4943+<tr class="rst-field"><th class="rst-field-name">param status:</th><td class="rst-field-body">A list of statuses to filter with.</td>
4944+</tr>
4945+<tr class="rst-field"><th class="rst-field-name" colspan="2">param visible_by_user:</th></tr>
4946+<tr><td>&nbsp;</td><td class="rst-field-body">Normally the user who is asking.</td>
4947+</tr>
4948+<tr class="rst-field"><th class="rst-field-name">returns:</th><td class="rst-field-body">A list of IBranchMergeProposal.</td>
4949+</tr>
4950+</tbody>
4951+</table>
4952+
4953+</wadl:doc>
4954+ <wadl:request>
4955+
4956+ <wadl:param style="query" name="ws.op"
4957+ required="true"
4958+ fixed="getMergeProposals"/>
4959+ <wadl:param style="query" required="false"
4960+ name="status">
4961+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4962+A list of merge proposal statuses to filter by.
4963+</wadl:doc>
4964+
4965+ </wadl:param>
4966+
4967+ </wadl:request>
4968+ <wadl:response>
4969+
4970+ <wadl:representation
4971+ href="https://api.edge.launchpad.net/beta/#branch_merge_proposal-page"/>
4972+ </wadl:response>
4973+ </wadl:method>
4974+ <wadl:method id="branch-setPrivate" name="POST">
4975+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4976+Set the branch privacy for this branch.
4977+</wadl:doc>
4978+ <wadl:request>
4979+ <wadl:representation
4980+ mediaType="application/x-www-form-urlencoded">
4981+ <wadl:param style="query" name="ws.op"
4982+ required="true" fixed="setPrivate"/>
4983+ <wadl:param style="query" required="true"
4984+ name="private">
4985+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4986+Keep branch confidential
4987+</wadl:doc>
4988+
4989+ </wadl:param>
4990+ </wadl:representation>
4991+ </wadl:request>
4992+
4993+ </wadl:method>
4994+ <wadl:method id="branch-linkSpecification" name="POST">
4995+ <wadl:doc xmlns="http://www.w3.org/1999/xhtml">
4996+<p>Link an ISpecification to a branch.</p>
4997+<table class="rst-docutils field-list" frame="void" rules="none">
4998+<col class="field-name" />
4999+<col class="field-body" />
5000+<tbody valign="top">
The diff has been truncated for viewing.

Subscribers

People subscribed via source and target branches