forked from community/device-mgt-core
Authentication handling initial impl and code formatting according to https://github.com/airbnb/javascript/tree/master/react#basic-rules.
parent
b3d2abf99e
commit
7ff5823e6d
@ -1,45 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
|
||||||
*
|
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
|
||||||
* in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing,
|
|
||||||
* software distributed under the License is distributed on an
|
|
||||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
* KIND, either express or implied. See the License for the
|
|
||||||
* specific language governing permissions and limitations
|
|
||||||
* under the License.
|
|
||||||
*/
|
|
||||||
'use strict';
|
|
||||||
|
|
||||||
import Axios from 'axios';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Handles all tasks related to Authentication and Authorization.
|
|
||||||
* Generate access tokens, verify the user has necessary permissions etc.
|
|
||||||
* */
|
|
||||||
class AuthHandler {
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Generate client id and client secret to generate access tokens.
|
|
||||||
* */
|
|
||||||
login(userName, password) {
|
|
||||||
Axios.post("https://localhost:9443/auth/application-mgt/v1.0/auth/tokens?userName=admin&password=admin").then()
|
|
||||||
}
|
|
||||||
|
|
||||||
isLoggedIn() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
getloggedInUser() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -1,120 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
|
||||||
*
|
|
||||||
* WSO2 Inc. licenses this file to you under the Apache License,
|
|
||||||
* Version 2.0 (the "License"); you may not use this file except
|
|
||||||
* in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing,
|
|
||||||
* software distributed under the License is distributed on an
|
|
||||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
||||||
* KIND, either express or implied. See the License for the
|
|
||||||
* specific language governing permissions and limitations
|
|
||||||
* under the License.
|
|
||||||
*/
|
|
||||||
'use strict';
|
|
||||||
|
|
||||||
import Helper from './helpers/AppMgtApiHelpers';
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Application related apis
|
|
||||||
* */
|
|
||||||
export default class Endpoint{
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Api for create an application.
|
|
||||||
* @param: applicationData: The application data object. This contains an object array of each step data from
|
|
||||||
* application creation wizard.
|
|
||||||
*
|
|
||||||
* From that data array, the proper application object is created and send it to the api.
|
|
||||||
* */
|
|
||||||
static createApplication(applicationData) {
|
|
||||||
|
|
||||||
console.log("In application create application", applicationData);
|
|
||||||
Helper.buildApplication(applicationData);
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Method to handle application release process.
|
|
||||||
* */
|
|
||||||
static releaseApplication() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Edit created application.
|
|
||||||
* @param applicationData: The modified application data.
|
|
||||||
* */
|
|
||||||
static editApplication(applicationData) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get all the created applications for the user.
|
|
||||||
* */
|
|
||||||
static getApplications() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get specific application.
|
|
||||||
* @param appId : The application Id.
|
|
||||||
* */
|
|
||||||
static getApplication(appId) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Delete specified application.
|
|
||||||
* @param appId: The id of the application which is to be deleted.
|
|
||||||
* */
|
|
||||||
static deleteApplication(appId) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Platform related apis
|
|
||||||
* */
|
|
||||||
/**
|
|
||||||
* Create a new Platform
|
|
||||||
* @param platformData: The platform data object.
|
|
||||||
* */
|
|
||||||
static createPlatform(platformData) {
|
|
||||||
// /api/application-mgt/v1.0/platforms/1.0.0/
|
|
||||||
// {
|
|
||||||
// identifier: "${platform_identifier}",
|
|
||||||
// name: "New Platform",
|
|
||||||
// description : "New Platform"
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get available platforms
|
|
||||||
* */
|
|
||||||
static getPlatforms() {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Get the user specified platform
|
|
||||||
* @param platformId: The identifier of the platform
|
|
||||||
* */
|
|
||||||
static getPlatform(platformId) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Delete specified platform
|
|
||||||
* @param platformId: The id of the platform which is to be deleted.
|
|
||||||
* */
|
|
||||||
static deletePlatform(platformId) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
@ -0,0 +1,106 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* WSO2 Inc. licenses this file to you under the Apache License,
|
||||||
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
|
* in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
import Axios from 'axios';
|
||||||
|
import User from './data/user';
|
||||||
|
import Utils from './data/utils';
|
||||||
|
import Constants from "../common/constants";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Handles all tasks related to Authentication and Authorization.
|
||||||
|
* Generate access tokens, verify the user has necessary permissions etc.
|
||||||
|
* */
|
||||||
|
class AuthHandler {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sends a request to the auth handler endpoint (auth/application-mgt/v1.0/auth/login) and generate token pair.
|
||||||
|
* @param userName: The user name of the user.
|
||||||
|
* @param password: The user password.
|
||||||
|
* @return Object: The response object from the axios post.
|
||||||
|
* */
|
||||||
|
static login(userName, password) {
|
||||||
|
const headers = {"Content-type": "application/json"};
|
||||||
|
let login_promise = Axios.post("https://localhost:9443/auth/application-mgt/v1.0/auth/login?userName=admin&password=admin",
|
||||||
|
null, {headers: headers});
|
||||||
|
|
||||||
|
login_promise.then(response => {
|
||||||
|
console.log(response);
|
||||||
|
const userName = response.data.userName;
|
||||||
|
const validityPeriod = response.data.expires_in; // In seconds
|
||||||
|
const WSO2_IOT_TOKEN = response.data.access_token;
|
||||||
|
const refreshToken = response.data.refresh_token;
|
||||||
|
const clientId = response.data.application_info[0].consumerKey;
|
||||||
|
const clientSecret = response.data.application_info[0].consumerSecret;
|
||||||
|
|
||||||
|
const user = new User(userName, clientId, clientSecret, validityPeriod);
|
||||||
|
console.log(user);
|
||||||
|
user.setAuthToken(WSO2_IOT_TOKEN, validityPeriod);
|
||||||
|
AuthHandler.setUser(user);
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
|
||||||
|
return login_promise;
|
||||||
|
};
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Persists the user object in browser's local storage.
|
||||||
|
* @param user: The user object.
|
||||||
|
* */
|
||||||
|
static setUser(user) {
|
||||||
|
if (!user instanceof User) {
|
||||||
|
throw "Invalid user object";
|
||||||
|
}
|
||||||
|
localStorage.setItem(Constants.userConstants.WSO2_USER, JSON.stringify(user.toJson()));
|
||||||
|
/* TODO: IMHO it's better to get this key (`wso2_user`) from configs */
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the logged in user.
|
||||||
|
* @return User: The logged in user object.
|
||||||
|
* */
|
||||||
|
static getUser() {
|
||||||
|
const userData = localStorage.getItem(Constants.userConstants.WSO2_USER);
|
||||||
|
const partialToken = Utils.getCookie(Constants.userConstants.PARTIAL_TOKEN);
|
||||||
|
|
||||||
|
if (!(userData && partialToken)) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
return User.fromJson(JSON.parse(userData));
|
||||||
|
}
|
||||||
|
|
||||||
|
isLoggedIn() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
logout() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Checks whether the access token is expired.
|
||||||
|
* @return boolean: True if expired. False otherwise.
|
||||||
|
* */
|
||||||
|
static isTokenExpired() {
|
||||||
|
const userData = AuthHandler.getUser().getAuthToken();
|
||||||
|
return (Date.now() - userData._createdTime) > userData._expires;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export default AuthHandler;
|
@ -0,0 +1,112 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* WSO2 Inc. licenses this file to you under the Apache License,
|
||||||
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
|
* in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
|
"use strict";
|
||||||
|
|
||||||
|
import Utils from './utils'
|
||||||
|
import Constants from '../../common/constants';
|
||||||
|
/**
|
||||||
|
* Represent an user logged in to the application, There will be allays one user per session and
|
||||||
|
* this user details will be persist in browser localstorage.
|
||||||
|
*/
|
||||||
|
export default class User {
|
||||||
|
constructor(name, clientId, clientSecret, validityPeriod) {
|
||||||
|
if (User._instance) {
|
||||||
|
return User._instance;
|
||||||
|
}
|
||||||
|
|
||||||
|
this._userName = name;
|
||||||
|
this._clientId = clientId;
|
||||||
|
this._clientSecret = clientSecret;
|
||||||
|
this._expires = validityPeriod;
|
||||||
|
this._createdTime = Date.now();
|
||||||
|
User._instance = this;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* OAuth scopes which are available for use by this user
|
||||||
|
* @returns {Array} : An array of scopes
|
||||||
|
*/
|
||||||
|
get scopes() {
|
||||||
|
return this._scopes;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set OAuth scopes available to be used by this user
|
||||||
|
* @param {Array} newScopes : An array of scopes
|
||||||
|
*/
|
||||||
|
set scopes(newScopes) {
|
||||||
|
Object.assign(this.scopes, newScopes);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the JS accessible access token fragment from cookie storage.
|
||||||
|
* @returns {String|null}
|
||||||
|
*/
|
||||||
|
getAuthToken() {
|
||||||
|
return Utils.getCookie(Constants.userConstants.PARTIAL_TOKEN);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Store the JavaScript accessible access token segment in cookie storage
|
||||||
|
* @param {String} newToken : Part of the access token which needs when accessing REST API
|
||||||
|
* @param {Number} validityPeriod : Validity period of the cookie in seconds
|
||||||
|
*/
|
||||||
|
setAuthToken(newToken, validityPeriod) {
|
||||||
|
Utils.delete_cookie(Constants.userConstants.PARTIAL_TOKEN);
|
||||||
|
Utils.setCookie(Constants.userConstants.PARTIAL_TOKEN, newToken, validityPeriod);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @param type
|
||||||
|
*/
|
||||||
|
checkPermission(type) {
|
||||||
|
throw ("Not implemented!");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Provide user data in JSON structure.
|
||||||
|
* @returns {JSON} : JSON representation of the user object
|
||||||
|
*/
|
||||||
|
toJson() {
|
||||||
|
return {
|
||||||
|
name: this._userName,
|
||||||
|
clientId: this._clientId,
|
||||||
|
clientSecret: this._clientSecret,
|
||||||
|
expires: this._expires
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* User utility method to create an user from JSON object.
|
||||||
|
* @param {JSON} userJson : Need to provide user information in JSON structure to create an user object
|
||||||
|
* @returns {User} : An instance of User(this) class.
|
||||||
|
*/
|
||||||
|
static fromJson(userJson) {
|
||||||
|
|
||||||
|
const _user = new User(userJson.name);
|
||||||
|
_user._clientId = userJson.clientId;
|
||||||
|
_user._clientSecret = userJson.clientSecret;
|
||||||
|
_user._expires = userJson.expires;
|
||||||
|
|
||||||
|
console.log(_user);
|
||||||
|
return _user;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
User._instance = null; // A private class variable to preserve the single instance of a swaggerClient
|
@ -0,0 +1,94 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* WSO2 Inc. licenses this file to you under the Apache License,
|
||||||
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
|
* in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Utility class for Publisher application
|
||||||
|
*/
|
||||||
|
class PublisherUtils {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* TODO: Remove this method one the initial phase is done, This is used to continue the API class until the login page is create
|
||||||
|
* @returns {promise}
|
||||||
|
*/
|
||||||
|
// static autoLogin() {
|
||||||
|
// let auth = new AuthManager();
|
||||||
|
// return auth.authenticateUser('admin', 'admin');
|
||||||
|
// }
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get JavaScript accessible cookies saved in browser, by giving the cooke name.
|
||||||
|
* @param {String} name : Name of the cookie which need to be retrived
|
||||||
|
* @returns {String|null} : If found a cookie with given name , return its value,Else null value is returned
|
||||||
|
*/
|
||||||
|
static getCookie(name) {
|
||||||
|
let pairs = document.cookie.split(";");
|
||||||
|
let cookie = null;
|
||||||
|
for (let pair of pairs) {
|
||||||
|
pair = pair.split("=");
|
||||||
|
let cookie_name = pair[0].trim();
|
||||||
|
let value = encodeURIComponent(pair[1]);
|
||||||
|
if (cookie_name === name) {
|
||||||
|
cookie = value;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return cookie;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Delete a browser cookie given its name
|
||||||
|
* @param {String} name : Name of the cookie which need to be deleted
|
||||||
|
*/
|
||||||
|
static delete_cookie(name) {
|
||||||
|
document.cookie = name + '=; Path=' + "/" + '; Expires=Thu, 01 Jan 1970 00:00:01 GMT;';
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Set a cookie with given name and value assigned to it. Cookies can be only set to the same origin,
|
||||||
|
* which the script is running
|
||||||
|
* @param {String} name : Name of the cookie which need to be set
|
||||||
|
* @param {String} value : Value of the cookie, expect it to be URLEncoded
|
||||||
|
* @param {number} validityPeriod : (Optional) Validity period of the cookie in seconds
|
||||||
|
* @param {String} path : Path which needs to set the given cookie
|
||||||
|
* @param {boolean} secured : secured parameter is set
|
||||||
|
*/
|
||||||
|
static setCookie(name, value, validityPeriod, path = "/", secured = true) {
|
||||||
|
let expires = "";
|
||||||
|
const securedDirective = secured ? "; Secure" : "";
|
||||||
|
if (validityPeriod) {
|
||||||
|
const date = new Date();
|
||||||
|
date.setTime(date.getTime() + validityPeriod * 1000);
|
||||||
|
expires = "; expires=" + date.toUTCString();
|
||||||
|
}
|
||||||
|
|
||||||
|
document.cookie = name + "=" + value + expires + "; path=" + path + securedDirective + validityPeriod
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Given an object returns whether the object is empty or not
|
||||||
|
* @param {Object} object : Any JSON object
|
||||||
|
* @returns {boolean}
|
||||||
|
*/
|
||||||
|
static isEmptyObject(object) {
|
||||||
|
return Object.keys(object).length === 0 && object.constructor === Object
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
export default PublisherUtils;
|
@ -0,0 +1,183 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2017, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* WSO2 Inc. licenses this file to you under the Apache License,
|
||||||
|
* Version 2.0 (the "License"); you may not use this file except
|
||||||
|
* in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing,
|
||||||
|
* software distributed under the License is distributed on an
|
||||||
|
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
* KIND, either express or implied. See the License for the
|
||||||
|
* specific language governing permissions and limitations
|
||||||
|
* under the License.
|
||||||
|
*/
|
||||||
|
'use strict';
|
||||||
|
|
||||||
|
import Axios from 'axios';
|
||||||
|
import AuthHandler from './authHandler';
|
||||||
|
import Constants from '../common/constants';
|
||||||
|
import Helper from './helpers/appMgtApiHelpers';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
export default class Endpoint {
|
||||||
|
|
||||||
|
/* =================================================================
|
||||||
|
* Application related apis
|
||||||
|
* */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Api for create an application.
|
||||||
|
* @param: applicationData: The application data object. This contains an object array of each step data from
|
||||||
|
* application creation wizard.
|
||||||
|
*
|
||||||
|
* From applicationData, the proper application object will be created and send it to the api.
|
||||||
|
* */
|
||||||
|
static createApplication(applicationData) {
|
||||||
|
|
||||||
|
let app = Helper.buildApplication(applicationData).application;
|
||||||
|
let user = AuthHandler.getUser();
|
||||||
|
console.log(user.idToken);
|
||||||
|
const headers = {
|
||||||
|
"Authorization": 'Bearer ' + user.getAuthToken(),
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
};
|
||||||
|
|
||||||
|
Axios.post(Constants.appManagerEndpoints.CREATE_APP, app, {headers: headers}).then(
|
||||||
|
function (response) {
|
||||||
|
console.log(response);
|
||||||
|
}
|
||||||
|
).catch(function (err) {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to handle application release process.
|
||||||
|
* */
|
||||||
|
static releaseApplication() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Promote the current state of the application.
|
||||||
|
* @param appId: The uuid of the application which the state should be updated.
|
||||||
|
* */
|
||||||
|
static updateState(appId) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the next possible state, which the application can be promoted to.
|
||||||
|
* @param appId: The application uuid.
|
||||||
|
*/
|
||||||
|
static getNextState(appId) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Edit created application.
|
||||||
|
* @param applicationData: The modified application data.
|
||||||
|
* */
|
||||||
|
static editApplication(applicationData) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get all the created applications for the user.
|
||||||
|
* @return Object: The response object from the axios post.
|
||||||
|
* */
|
||||||
|
static getApplications() {
|
||||||
|
let user = AuthHandler.getUser();
|
||||||
|
console.log("Get all applications", user.getAuthToken());
|
||||||
|
const headers = {
|
||||||
|
"Authorization": 'Bearer ' + user.getAuthToken(),
|
||||||
|
'Accept': 'application/json',
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
};
|
||||||
|
|
||||||
|
return Axios.get(Constants.appManagerEndpoints.GET_ALL_APPS, {headers: headers});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get specific application.
|
||||||
|
* @param appId: The application Id.
|
||||||
|
* */
|
||||||
|
static getApplication(appId) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Delete specified application.
|
||||||
|
* @param appId: The id of the application which is to be deleted.
|
||||||
|
* */
|
||||||
|
static deleteApplication(appId) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* End of Application management apis.
|
||||||
|
* =================================================================
|
||||||
|
* */
|
||||||
|
|
||||||
|
/*
|
||||||
|
* =================================================================
|
||||||
|
* Platform related apis
|
||||||
|
* */
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a new Platform
|
||||||
|
* @param platformData: The platform data object.
|
||||||
|
* */
|
||||||
|
static createPlatform(platformData) {
|
||||||
|
|
||||||
|
const headers = {
|
||||||
|
"Authorization": 'Bearer ' + AuthHandler.getUser().getAuthToken(),
|
||||||
|
'Accept': 'application/json',
|
||||||
|
"Content-Type": "application/json",
|
||||||
|
};
|
||||||
|
|
||||||
|
Axios.post(Constants.platformManagerEndpoints.CREATE_PLATFORM, platformData, {headers: headers}).then(
|
||||||
|
function (response) {
|
||||||
|
console.log(response);
|
||||||
|
}
|
||||||
|
).catch(function (err) {
|
||||||
|
console.log(err);
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get available platforms
|
||||||
|
* */
|
||||||
|
static getPlatforms() {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Get the user specified platform
|
||||||
|
* @param platformId: The identifier of the platform
|
||||||
|
* */
|
||||||
|
static getPlatform(platformId) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Delete specified platform
|
||||||
|
* @param platformId: The id of the platform which is to be deleted.
|
||||||
|
* */
|
||||||
|
static deletePlatform(platformId) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
* End of Platform management apis.
|
||||||
|
* =================================================================
|
||||||
|
* */
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in new issue