Skip to content
This repository has been archived by the owner on Jul 17, 2023. It is now read-only.

Commit

Permalink
Rename: rapid -> rapidio, rapidClient -> instance
Browse files Browse the repository at this point in the history
  • Loading branch information
robertrossmann committed Sep 19, 2017
1 parent 00b78a0 commit 5a1bbe6
Showing 1 changed file with 21 additions and 21 deletions.
42 changes: 21 additions & 21 deletions packages/rapid.io/src/service.es
@@ -1,5 +1,5 @@
import Service from '@atlas.js/service'
import rapid from 'rapid-io'
import rapidio from 'rapid-io'

class Rapid extends Service {
static defaults = {
Expand All @@ -9,65 +9,65 @@ class Rapid extends Service {
}

prepare() {
return rapid.createClient(this.config.apiKey)
return rapidio.createClient(this.config.apiKey)
}

async start(rapidClient) {
async start(instance) {
if (this.config.withAuthorization) {
await this.authorize(rapidClient)
return rapidClient
await this.authorize(instance)
return instance
}

await new Promise((resolve, reject) => {
if (rapidClient.connected) {
if (instance.connected) {
resolve()
}

rapidClient.onConnectionStateChanged(() => {
if (rapidClient.connected) {
instance.onConnectionStateChanged(() => {
if (instance.connected) {
resolve()
} else {
const err = new Error('Rapid client was unable to initialize a connection.')
const err = new Error('Rapid instance was unable to initialize a connection.')
reject(err)
}
})
})

this.log.info('Rapid client successfully connected.')
return rapidClient
this.log.info('Rapid instance successfully connected.')
return instance
}

stop(rapidClient) {
rapidClient.disconnect()
stop(instance) {
instance.disconnect()
return new Promise(resolve => {
if (!rapidClient.connected) {
if (!instance.connected) {
resolve()
}

rapidClient.onConnectionStateChanged(() => {
if (!rapidClient.connected) {
instance.onConnectionStateChanged(() => {
if (!instance.connected) {
resolve()
}
})
})
}

/**
* Authorizes client's access rights to work with protected collections.
* @param {Object} rapidClient Rapid client to be authorized
* Authorizes instance's access rights to work with protected collections.
* @param {Object} instance Rapid instance to be authorized
* @return {Promise.<void>}
*/
async authorize(rapidClient) {
async authorize(instance) {
await new Promise((resolve, reject) => {
rapidClient.authorize(this.config.authToken, err => {
instance.authorize(this.config.authToken, err => {
if (err) {
reject(err)
}
resolve()
})
})

this.log.info('Rapid client successfully connected and authorized.')
this.log.info('Rapid instance successfully connected and authorized.')
}
}

Expand Down

0 comments on commit 5a1bbe6

Please sign in to comment.