Implement subscriptions (issue #70)

This commit is contained in:
Vincent Jacques
2012-09-08 01:54:51 +02:00
parent 5d67293676
commit 3be2e82b40
13 changed files with 395 additions and 6 deletions
@@ -153,6 +153,15 @@
"addElement": true,
"removeElement": true
},
{
"name": "subscriptions",
"singularName": "subscription",
"type": "Repository",
"getList": true,
"hasElement": true,
"addElement": true,
"removeElement": true
},
{
"name": "starred",
"singularName": "starred",
@@ -952,6 +961,12 @@
"type": "Repository",
"getList": true
},
{
"name": "subscriptions",
"singularName": "subscription",
"type": "Repository",
"getList": true
},
{
"name": "starred",
"singularName": "starred",
@@ -1768,6 +1783,12 @@
"type": "NamedUser",
"getList": true
},
{
"name": "subscribers",
"singularName": "subscriber",
"type": "NamedUser",
"getList": true
},
{
"name": "stargazers",
"singularName": "stargazer",
@@ -999,6 +999,154 @@
"name": "void"
}
},
{
"group": "subscriptions",
"name": [
"add",
"to",
"subscriptions"
],
"mandatoryParameters": [
{
"type": {
"simple": false,
"cardinality": "scalar",
"name": "Repository"
},
"name": "subscription"
}
],
"request": {
"url": [
{
"type": "constant",
"value": "/user/subscriptions/"
},
{
"type": "identity",
"value": [
"subscription"
]
}
],
"information": "status",
"verb": "PUT"
},
"isMutation": false,
"optionalParameters": [],
"type": {
"simple": true,
"cardinality": "scalar",
"name": "void"
}
},
{
"group": "subscriptions",
"name": [
"get",
"subscriptions"
],
"mandatoryParameters": [],
"request": {
"url": [
{
"type": "constant",
"value": "/user/subscriptions"
}
],
"information": "data",
"verb": "GET"
},
"isMutation": false,
"optionalParameters": [],
"type": {
"simple": false,
"cardinality": "list",
"name": "Repository"
}
},
{
"group": "subscriptions",
"name": [
"has",
"in",
"subscriptions"
],
"mandatoryParameters": [
{
"type": {
"simple": false,
"cardinality": "scalar",
"name": "Repository"
},
"name": "subscription"
}
],
"request": {
"url": [
{
"type": "constant",
"value": "/user/subscriptions/"
},
{
"type": "identity",
"value": [
"subscription"
]
}
],
"information": "status",
"verb": "GET"
},
"isMutation": false,
"optionalParameters": [],
"type": {
"simple": true,
"cardinality": "scalar",
"name": "bool"
}
},
{
"group": "subscriptions",
"name": [
"remove",
"from",
"subscriptions"
],
"mandatoryParameters": [
{
"type": {
"simple": false,
"cardinality": "scalar",
"name": "Repository"
},
"name": "subscription"
}
],
"request": {
"url": [
{
"type": "constant",
"value": "/user/subscriptions/"
},
{
"type": "identity",
"value": [
"subscription"
]
}
],
"information": "status",
"verb": "DELETE"
},
"isMutation": false,
"optionalParameters": [],
"type": {
"simple": true,
"cardinality": "scalar",
"name": "void"
}
},
{
"group": "starred",
"name": [
@@ -5492,6 +5640,37 @@
"name": "Repository"
}
},
{
"group": "subscriptions",
"name": [
"get",
"subscriptions"
],
"mandatoryParameters": [],
"request": {
"url": [
{
"type": "attribute",
"value": [
"url"
]
},
{
"type": "constant",
"value": "/subscriptions"
}
],
"information": "data",
"verb": "GET"
},
"isMutation": false,
"optionalParameters": [],
"type": {
"simple": false,
"cardinality": "list",
"name": "Repository"
}
},
{
"group": "starred",
"name": [
@@ -10378,6 +10557,37 @@
"name": "NamedUser"
}
},
{
"group": "subscribers",
"name": [
"get",
"subscribers"
],
"mandatoryParameters": [],
"request": {
"url": [
{
"type": "attribute",
"value": [
"url"
]
},
{
"type": "constant",
"value": "/subscribers"
}
],
"information": "data",
"verb": "GET"
},
"isMutation": false,
"optionalParameters": [],
"type": {
"simple": false,
"cardinality": "list",
"name": "NamedUser"
}
},
{
"group": "stargazers",
"name": [