public async Task <byte[]> ExecuteQuery() { try { byte[] Bytes = null; Bytes = await Request.GetRawBodyBytesAsync(); var Query = RestApiDataStore.GetObjectsFromByteArray <string>(Bytes); //string myConnString = "User Id=shopcontroller;Password=Scvs!2012;server=192.163.193.68;Database=scaccess;Persist Security Info=True;"; var connectionString = MySqlConnectionProvider.GetConnectionString("192.163.193.68", "shopcontroller", "Scvs!2012", "scaccess"); // Create the default DAL which is used by the default Session and newly created objects to access a data store. var Dal = XpoDefault.GetDataLayer(connectionString, AutoCreateOption.DatabaseAndSchema); Session session = new Session(Dal); var Result = session.ExecuteQuery(Query); return(RestApiDataStore.ToByteArray(Result)); } catch (Exception ex) { var test = ex.Message; throw; } }
public async Task<LoginResult> Login() { //List of standard Payload claims https://en.wikipedia.org/wiki/JSON_Web_Token#Standard_fields byte[] ParametersByte = await Request.GetRawBodyBytesAsync(); LoginParameters LoginParameters = RestApiDataStore.GetObjectsFromByteArray<LoginParameters>(ParametersByte); string Database; string Server; Employee User = null; try { string UserName = WebUtility.UrlDecode(LoginParameters.Username); string Password = WebUtility.UrlDecode(LoginParameters.Password); Server = WebUtility.UrlDecode(LoginParameters.Server); Database = WebUtility.UrlDecode(LoginParameters.Database); UnitOfWork UoW = XpoProxyHelper.GetUnitOfWork(Database, Server); User = UoW.FindObject<Employee>(new BinaryOperator("UserName", UserName)); if (User == null) { return new LoginResult() { Authenticated = false, Token = "" }; } if (!User.ComparePassword(Password)) { return new LoginResult() { Authenticated = false, Token = "" }; //TODO invalid password } } catch (Exception exception) { return new LoginResult() { Authenticated = false, Token = "", ErrorMessage= exception.Message }; } JwtPayload InitialPayload; InitialPayload = new JwtPayload { { JwtRegisteredClaimNames.NameId, LoginParameters.Username }, { JwtRegisteredClaimNames.Iat, JwtHelper.ConvertToUnixTime(DateTime.Now).ToString() }, { JwtRegisteredClaimNames.Iss, Issuer }, { "DatabaseId", Database }, { "ServerId", Server }, }; var StringToken = JwtHelper.GenerateToken(Key, InitialPayload); return new LoginResult() { Authenticated = true, Token = StringToken, CurrentUserId = User?.Oid.ToString()}; }
public async Task <byte[]> ModifyData() { byte[] Bytes = null; Bytes = await Request.GetRawBodyBytesAsync(); var Result = _DataStore.ModifyData(RestApiDataStore.GetObjectsFromByteArray <ModificationStatement[]>(Bytes)); return(RestApiDataStore.ToByteArray(Result)); }
public async Task <byte[]> SelectData() { byte[] Bytes = null; Bytes = await Request.GetRawBodyBytesAsync(); SelectedData SelectedData = _DataStore.SelectData(RestApiDataStore.GetObjectsFromByteArray <SelectStatement[]>(Bytes)); return(RestApiDataStore.ToByteArray(SelectedData)); }
public async Task <byte[]> ModifyData() { byte[] Bytes = null; try { Bytes = await Request.GetRawBodyBytesAsync(); //var Result = _DataStore.ModifyData(RestApiDataStore.GetObjectsFromByteArray<ModificationStatement[]>(Bytes)); var Result = GetDataStore().ModifyData(RestApiDataStore.GetObjectsFromByteArray <ModificationStatement[]>(Bytes)); return(RestApiDataStore.ToByteArray(Result)); } catch (Exception ex) { var test = ex.Message; throw; } }
public async Task <byte[]> SelectData() { try { byte[] Bytes = null; Bytes = await Request.GetRawBodyBytesAsync(); //SelectedData SelectedData = _DataStore.SelectData(RestApiDataStore.GetObjectsFromByteArray<SelectStatement[]>(Bytes)); SelectedData SelectedData = GetDataStore().SelectData(RestApiDataStore.GetObjectsFromByteArray <SelectStatement[]>(Bytes)); return(RestApiDataStore.ToByteArray(SelectedData)); } catch (Exception ex) { var test = ex.Message; throw; } }
public async Task <byte[]> Do() { byte[] Bytes = null; try { Bytes = await Request.GetRawBodyBytesAsync(); var Parameters = RestApiDataStore.GetObjectsFromByteArray <DoArgs>(Bytes); //var Result = (_DataStore as ICommandChannel).Do(Parameters.Command, Parameters.Parameters); var Result = (GetDataStore() as ICommandChannel).Do(Parameters.Command, Parameters.Parameters); return(RestApiDataStore.ToByteArray(Result)); } catch (Exception ex) { var test = ex.Message; throw; } }
public async Task <UpdateSchemaResult> UpdateSchema() { try { byte[] Bytes = null; Bytes = await Request.GetRawBodyBytesAsync(); var Parameters = RestApiDataStore.GetObjectsFromByteArray <UpdateSchemaParameters>(Bytes); UpdateSchemaResult updateSchemaResult = _DataStore.UpdateSchema(Parameters.dontCreateIfFirstTableNotExist, Parameters.tables); return(updateSchemaResult); } catch (Exception exception) { Debug.WriteLine(string.Format("{0}:{1}", "exception.Message", exception.Message)); if (exception.InnerException != null) { Debug.WriteLine(string.Format("{0}:{1}", "exception.InnerException.Message", exception.InnerException.Message)); } Debug.WriteLine(string.Format("{0}:{1}", " exception.StackTrace", exception.StackTrace)); } return(new UpdateSchemaResult()); }
public byte[] GetAutoCreateOptions() { // return RestApiDataStore.ToByteArray(_DataStore.AutoCreateOption); return(RestApiDataStore.ToByteArray(GetDataStore().AutoCreateOption)); }