Skip to content
This repository was archived by the owner on Jul 16, 2020. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 14 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,12 +72,21 @@ The following fields will determine how the Ciao Web UI will beconfigured.

#### Building application

In order to build application the 'install.sh' must be executed. This script will intsall dependencies using the npm package manager and also build minified JS scripts used with browser compatibility.
Note: this process is only necessary for development as minified scripts and dependencies are already provided by the application.
In order to build the application a Makefile is provided. Use make 'TARGET' to build Ciao-Webui. When running either 'install' or 'install-dev' targets. Note that if not set, the environment variable 'NODE_ENV' will be set to 'production' by default.

###### make install
Use 'make' or 'make install' in order to build ciao-webui application with latest 'production' ready code.

###### make install-dev
Use 'make install-dev' to install development dependencies and fully build and update dependencies for the Ciao-Webui project. Use this target for development environments.

###### make uninstall
Remove Ciao-Webui from the system and cleans build files.

###### make clean
Clean build generated files from working directory.
**Note:** Use this target to clean the working directory after runnin 'make install-dev' target.

# install while setting a "development" environment
$ ./install.sh development
# In this case NODE_ENV will be set to "development"

#### Running application:

Expand Down
35 changes: 35 additions & 0 deletions core/externalIPService.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
/*Pool service component
This is a client implementation to handle Ciao's external-ip API.
*/

var externalIPService = function (adapter, tokenManager) {
};

// listMappedIPs
// Method: GET
externalIPService.prototype.listMappedIPs = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {
};
};

// mapExternalIP
// Method: POST
externalIPService.prototype.mapExternalIP = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {
};
};

// unmapExternalIP
// Method: DELETE
externalIPService.prototype.unmapExternalIP = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {
};
};

module.exports = externalIPService;
94 changes: 94 additions & 0 deletions core/poolService.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
/*Pool service component
This is a client implementation to handle Ciao's Pool API.
*/

var poolService = function (adapter, tokenManager) {
this.adapter = adapter;
this.tokenManager = tokenManager;
};

// Begins section for IP Pools

// listPools:
// Method: GET
// Returns a list of pools
poolService.prototype.listPools = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {

};
};

// addPool
// Method: POST
// Delivers a new pool request.
// On success: Expects http statusNoContent
poolService.prototype.addPool = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {

};
};

// addToPool
// Method: POST
// Delivers a new pool request.
// On success: Expects http statusNoContent
poolService.prototype.addToPool = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {

};
};

// deletePool
// Method: DELETE
// Delivers request to delete pool
// On success: Expects http statusNoContent
poolService.prototype.deletePool = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {

};
};

// deleteSubnet
// Method: DELETE
// Delivers request to delete subnet from
// On success: Expects http statusNoContent
poolService.prototype.deleteSubnet = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {

};
};

// deleteExternalIP
// Method: DELETE
// Delivers request to delete external IP from pool
// On success: Expects http statusNoContent
poolService.prototype.deleteExternalIP = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {

};
};

// listPools:
// Method: GET
// Returns a single pool object
poolService.prototype.showPool = function () {
var adapter = this.adapter;
var tokenManager = this.tokenManager;
return function (req, res, next) {

};
};

module.exports = poolService;