summaryrefslogtreecommitdiffstats
path: root/source/spec/promise-module.coffee
diff options
context:
space:
mode:
Diffstat (limited to 'source/spec/promise-module.coffee')
-rw-r--r--source/spec/promise-module.coffee80
1 files changed, 0 insertions, 80 deletions
diff --git a/source/spec/promise-module.coffee b/source/spec/promise-module.coffee
deleted file mode 100644
index f021f6c..0000000
--- a/source/spec/promise-module.coffee
+++ /dev/null
@@ -1,80 +0,0 @@
-#
-# Author: Peter K. Lee (peter@corenova.com)
-#
-# All rights reserved. This program and the accompanying materials
-# are made available under the terms of the Apache License, Version 2.0
-# which accompanies this distribution, and is available at
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-module.exports =
- '/opnfv-promise/promise/capacity/total': (prev) ->
- @computed (->
- combine = (a, b) ->
- for k, v of b.capacity when v?
- a[k] ?= 0
- a[k] += v
- return a
- (@parent.get 'pools')
- .filter (entry) -> entry.active is true
- .reduce combine, {}
- ), type: prev
-
- '/opnfv-promise/promise/capacity/reserved', (prev) ->
- @computed (->
- combine = (a, b) ->
- for k, v of b.capacity when v?
- a[k] ?= 0
- a[k] += v
- return a
- (@parent.get 'reservations')
- .filter (entry) -> entry.active is true
- .reduce combine, {}
- ), type: prev
-
- # rebind to be a computed property
- '/opnfv-promise/promise/capacity/usage': (prev) ->
- @computed (->
- combine = (a, b) ->
- for k, v of b.capacity when v?
- a[k] ?= 0
- a[k] += v
- return a
- (@parent.get 'allocations')
- .filter (entry) -> entry.active is true
- .reduce combine, {}
- ), type: prev
-
- # rebind to be a computed property
- '/opnfv-promise/promise/capacity/available': (prev) ->
- @computed (->
- total = @get 'total'
- reserved = @get 'reserved'
- usage = @get 'usage'
- for k, v of total when v?
- total[k] -= reserved[k] if reserved[k]?
- total[k] -= usage[k] if usage[k]?
- total
- ), type: prev
-
- '/opnfv-promise/create-reservation':
- (input, output, done) ->
- # 1. create the reservation record (empty)
- reservation = @create 'ResourceReservation'
- reservations = @access 'promise.reservations'
-
- # 2. update the record with requested input
- reservation.invoke 'update', input.get()
- .then (res) ->
- # 3. save the record and add to list
- res.save()
- .then ->
- reservations.push res
- output.set result: 'ok', message: 'reservation request accepted'
- output.set 'reservation-id', res.id
- done()
- .catch (err) ->
- output.set result: 'error', message: err
- done()
- .catch (err) ->
- output.set result: 'conflict', message: err
- done()