remove welcome subscription and start adding subscriptions for queries

Signed-off-by: Alexis Tyler <xo@wvvw.me>
This commit is contained in:
Alexis Tyler
2019-08-17 15:52:50 +09:30
parent 8785ec0724
commit ade0e65bcd
8 changed files with 67 additions and 14 deletions

View File

@@ -61,25 +61,16 @@ module.exports = function (
DELETED
}
"""
This can only be updated.
"""
enum UpdateOnlyMutationType {
UPDATED
}
type WelcomeSubscription {
mutation: MutationType!
node: Welcome!
}
type PingSubscription {
mutation: MutationType!
node: String!
}
type Subscription {
welcome: WelcomeSubscription!
ping: PingSubscription!
}
`];

View File

@@ -35,9 +35,6 @@ module.exports = function ($injector, GraphQLJSON, GraphQLLong, GraphQLUUID, pub
return pubsub.asyncIterator('ping');
}
},
welcome: {
subscribe: () => pubsub.asyncIterator('welcome')
},
services: {
subscribe: () => pubsub.asyncIterator('services')
},

View File

@@ -15,6 +15,15 @@ type Mutation {
removeDiskFromArray(input: arrayDiskInput): Array @func(module: "array/add-disk")
}
type ArraySubscription {
mutation: UpdateOnlyMutationType!
node: Array!
}
type Subscription {
array: ArraySubscription
}
input arrayDiskInput {
"""Disk ID"""
id: String!

View File

@@ -13,6 +13,15 @@ type Mutation {
cancelParityCheck: JSON @func(module: "array/update-parity-check", data: { state: "cancel" })
}
type ParityHistorySubscription {
mutation: MutationType!
node: ParityCheck!
}
type Subscription {
parityHistory: ParityHistorySubscription
}
type ParityCheck {
date: String!
duration: Int!

View File

@@ -1,10 +1,24 @@
type Query {
"""Docker container"""
dockerContainer(id: String!): DockerContainer! @func(module: "docker/get-container")
dockerContainer(id: ID!): DockerContainer! @func(module: "docker/get-container")
"""All Docker containers"""
dockerContainers(all: Boolean): [DockerContainer]! @func(module: "docker/get-containers")
}
type DockerContainerSubscription {
mutation: MutationType!
node: DockerContainer!
}
type DockerContainersSubscription {
mutation: MutationType!
node: [DockerContainer]!
}
type Subscription {
dockerContainer(id: ID!): DockerContainerSubscription
dockerContainers: DockerContainersSubscription
}
enum ContainerPortType {
tcp
udp

View File

@@ -5,6 +5,20 @@ type Query {
dockerNetworks(all: Boolean): [DockerNetwork]! @func(module: "docker/get-networks")
}
type DockerNetworkSubscription {
mutation: MutationType!
node: DockerNetwork!
}
type DockerNetworksSubscription {
mutation: MutationType!
node: [DockerNetwork]!
}
type Subscription {
dockerNetwork(id: ID!): DockerNetworkSubscription
dockerNetworks: DockerNetworksSubscription
}
type DockerNetwork {
name: String
id: String

View File

@@ -3,8 +3,18 @@ type Query {
services: [Service] @func(module: "get-services")
}
type ServiceSubscription {
mutation: UpdateOnlyMutationType!
node: Service!
}
type ServicesSubscription {
mutation: UpdateOnlyMutationType!
node: [Service]!
}
type Subscription {
services: [Service]
service(id: ID!): ServiceSubscription
services: ServicesSubscription
}
type Service {

View File

@@ -2,6 +2,15 @@ type Query {
vars: Vars @func(module: "get-vars")
}
type VarsSubscription {
mutation: UpdateOnlyMutationType!
node: Vars!
}
type Subscription {
vars(id: ID!): VarsSubscription
}
type Vars {
"""Unraid version"""
version: String