Example #1
0
    public IEnumerator CheckConnection(OnConnectionStateChecked loaded, OnConnectionStateCheckError error)
    {
        // Request data building
        WWWForm data = new WWWForm();                         // Create WWW Form

        data.AddField("lang", LangManager.settings.language); // Add Language from Language Manager for responce messages

        // Send request to API Server
        WWW request = new WWW(server_uri + "/check_connection/", data); // Create Request

        yield return(request);                                          // Send Request

        // Responce checking
        if (request.error != null)                                                         // Request has error
        {
            connection = false;                                                            // Server connection failture
            error("Failed to send request. Please, check your internet connection.");      // Do error
        }
        else                                                                               // Complete
        {
            try{                                                                           // Trying to work with responce
                // Here we parse JSON data and set server connection state
                baseResponse responce = JsonUtility.FromJson <baseResponse>(request.text); // Convert from JSON to Base Responce Model
                if (responce.complete)                                                     // Responce Complete
                {
                    connection = true;                                                     // Server connection = true
                    loaded();                                                              // Loaded
                }
                else                                                                       // Responce Error
                {
                    connection = false;                                                    // Server connection failture
                    error(responce.message);                                               // Do error
                    Debug.Log("API Error: " + responce.message);                           // Just log for self
                }
            }catch {                                                                       // Error
                connection = false;                                                        // Server connection failture
                error("Failed to parse JSON data from server. Please, try again later.");  // Do error
            }
        }
    }
Example #2
0
        public void executeHandler()
        {
            if (!isRequestAuthorized())
            {
                _context.Response.StatusCode = 403;
                return;
            }

            string     action        = _context.Request["action"];
            baseAction actionHandler = null;

            switch (action)
            {
            // Usermanagement
            case "login":
                actionHandler = new loginAction();
                break;

            case "addUser":
                actionHandler = new addUserAction();
                break;

            case "getUser":
                actionHandler = new getUserAction();
                break;

            case "editUser":
                actionHandler = new editUserAction();
                break;

            case "deleteUser":
                actionHandler = new deleteUserAction();
                break;

            //Projectmanagement
            case "getProjects":
                actionHandler = new getProjectsAction();
                break;

            case "getProject":
                actionHandler = new getProjectAction();
                break;

            case "addProject":
                actionHandler = new addProjectAction();
                break;

            case "deleteProject":
                actionHandler = new deleteProjectAction();
                break;

            case "editProject":
                actionHandler = new editProjectAction();
                break;

            //updateLog
            case "addLog":
                actionHandler = new addLogAction();
                break;

            case "addLogDebug":
                actionHandler = new addLogDebugAction();
                break;

            case "getLog":
                actionHandler = new getLogAction();
                break;

            case "cleanupLog":
                actionHandler = new cleanLogAction();
                break;
            }

            baseResponse response = actionHandler != null
                                                        ? actionHandler.runAction(_context)
                                                        : new defaultResponse
            {
                responseCode = responseCodes.Error, responseMessage = "Invalid Action"
            };

            response.sendResponse(_context.Response);
            response.Dispose();
            if (actionHandler != null)
            {
                actionHandler.Dispose();
            }
            GC.Collect();
        }