void Update() { // If user presses Space, then perform the login operation. if (Input.GetKeyDown(KeyCode.Space)) { Debug.Log("Starting login process..."); LoginOperation.Create(LoginCriteria.Create("greg7", "asdf2")).ExecuteAsync(Callback); // Alternatively, executes the operation synchronously. // This WILL block until the web operation is completed (sometimes it takes as long as ~250 frames), so asynchronous is preferred to prevent gameplay hiccups. //LoginOperationResult result = operation.Execute(); Debug.Log("Finished login operation!"); } if (Input.GetKeyDown(KeyCode.R)) { RegisterOperationCriteria criteria = RegisterOperationCriteria.Builder.Create() .Username("greg900563") .Password("") .Email("*****@*****.**") .DateOfBirth(new DateTime(1989, 11, 25)) .Gender(RegistrationCriteriaGender.Male) .ZipCode("52333").Build(); RegisterOperation registerOperation = RegisterOperation.Create(criteria); registerOperation.ExecuteAsync(RegisterCallback); } }
/// <summary> /// Creates a Dictionary of text field keys and values to insert into the WWWForm before executing the web operation. /// </summary> /// <param name="criteria">The RegisterOperationCriteria from which to generate the WWWForm text fields.</param> /// <returns>A Dictionary mapping text keys to text values from the RegisterOperationCriteria.</returns> private static Dictionary <string, string> CreateFieldDictionaryFromCriteria(RegisterOperationCriteria criteria) { Dictionary <string, string> fields = new Dictionary <string, string>(); fields.Add("username", criteria.Username); fields.Add("age", criteria.DateOfBirth.ToShortDateString()); fields.Add("email", criteria.Email); fields.Add("password", criteria.Password); fields.Add("password_confirmation", criteria.Password); fields.Add("gender", GenderEnumToString(criteria.Gender)); fields.Add("postal_code", criteria.ZipCode); return(fields); }
/// <summary> /// Verifies that the constructed RegisterOperationCriteria is valid. /// </summary> /// <param name="criteria">The RegisterOperationCriteria to inspect.</param> private static void VerifyCriteria(RegisterOperationCriteria criteria) { Asserter.NotNullOrEmpty(criteria.Username, "RegisterOperationCriteria.Builder:username is null or empty"); Asserter.NotNullOrEmpty(criteria.Password, "RegisterOperationCriteria.Builder:password is null or empty"); Asserter.NotNullOrEmpty(criteria.ZipCode, "RegisterOperationCriteria.Builder:zipcode is null or empty"); }
/// <summary> /// Constructs a RegisterOperationCriteria.Builder. /// </summary> private Builder() { _isValid = true; _criteria = new RegisterOperationCriteria(); }
/// <summary> /// Constructs a new RegisterOperation. /// </summary> /// <param name="criteria">The RegisterOperationCriteria containing the data required to complete the operation.</param> private RegisterOperation(RegisterOperationCriteria criteria) { _criteria = criteria; }
/// <summary> /// Creates a RegisterOperation object. /// </summary> /// <param name="criteria">Criteria containing the data required to register a new account.</param> /// <returns>A RegisterOperation object ready to execute, or null if the criteria contains invalid data.</returns> public static RegisterOperation Create(RegisterOperationCriteria criteria) { Asserter.NotNull(criteria, "RegisterOperation.Create:criteria is null"); return(new RegisterOperation(criteria)); }