public void Run() { TaskScheduler.UnobservedTaskException += TaskScheduler_UnobservedTaskException; CheckConfiguration(); LoginTask.DoLogin().Wait(); LikeTask.Start(); FollowingTask.Start(); }
/// <summary> /// 指定したユーザIDでGS2にログインし、アクセストークンを取得します<br /> /// 本APIは信頼出来るゲームサーバーから呼び出されることを想定しています。<br /> /// ユーザIDの値の検証処理が存在しないため、クライアントから呼び出すのは不適切です。<br /> /// </summary> /// /// <returns>IEnumerator</returns> /// <param name="callback">コールバックハンドラ</param> /// <param name="request">リクエストパラメータ</param> public IEnumerator Login( Request.LoginRequest request, UnityAction <AsyncResult <Result.LoginResult> > callback ) { var task = new LoginTask(request, callback); return(Gs2RestSession.Execute(task)); }
/// <summary> /// 指定したユーザIDでGS2にログインし、アクセストークンを取得します<br /> /// 本APIは信頼出来るゲームサーバーから呼び出されることを想定しています。<br /> /// ユーザIDの値の検証処理が存在しないため、クライアントから呼び出すのは不適切です。<br /> /// </summary> /// /// <returns>IEnumerator</returns> /// <param name="callback">コールバックハンドラ</param> /// <param name="request">リクエストパラメータ</param> public IEnumerator Login( Request.LoginRequest request, UnityAction <AsyncResult <Result.LoginResult> > callback ) { var task = new LoginTask(request, callback); if (_certificateHandler != null) { task.UnityWebRequest.certificateHandler = _certificateHandler; } return(Gs2RestSession.Execute(task)); }
protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); this.SetContentView(Resource.Layout.LoginLayout); emailTextBox = FindViewById<EditText>(Resource.Id.emailText); passwordTextBox = FindViewById<EditText>(Resource.Id.passwordText); loginButton = FindViewById<Button>(Resource.Id.loginButon); loginButton.Click += (object sender, EventArgs e) => { ILoginTask task = new LoginTask(this); task.Authenticate(); }; }
public void Login_Test() { using (ShimsContext.Create()) { CloudFoundry.CloudController.V2.Client.Fakes.ShimCloudFoundryClient.AllInstances.LoginCloudCredentials = TestUtils.CustomLogin; LoginTask login = new LoginTask(); login.CFUser = Settings.Default.User; login.CFPassword = Settings.Default.Password; login.CFServerUri = Settings.Default.ServerUri; login.BuildEngine = new FakeBuildEngine(); Assert.IsTrue(login.Execute()); } }
protected override IEnumerator OpenImpl() { _loginTask = new LoginTask(this); _loginTask.UnityWebRequest.method = UnityWebRequest.kHttpVerbPOST; _loginTask.UnityWebRequest.url = EndpointHost .Replace("{service}", "identifier") .Replace("{region}", Region.DisplayName()) + "/projectToken/login"; _loginTask.UnityWebRequest.SetRequestHeader("Content-Type", "application/json"); var stringBuilder = new StringBuilder(); var jsonWriter = new JsonWriter(stringBuilder); jsonWriter.WriteObjectStart(); if (Credential.ClientId != null) { jsonWriter.WritePropertyName("client_id"); jsonWriter.Write(Credential.ClientId); } if (Credential.ClientSecret != null) { jsonWriter.WritePropertyName("client_secret"); jsonWriter.Write(Credential.ClientSecret); } jsonWriter.WriteObjectEnd(); var body = stringBuilder.ToString(); if (!string.IsNullOrEmpty(body)) { _loginTask.UnityWebRequest.uploadHandler = new UploadHandlerRaw(Encoding.UTF8.GetBytes(body)); } yield return(_loginTask.Send()); _loginTask = null; }
public async override Task <StateBase> Start(CancellationToken cancellationToken) { await base.Start(cancellationToken); if (retryCount >= retryCountLimit) { throw new Exception("Cannot login"); } await client.LoadUrl(client.Setting.Server.ToUri().GetSuburbsUri()); if (client.Url == client.Setting.Server || !UtilityTask.IsLogon()) { client.Logger.Write("Now logging in to server."); await LoginTask.Execute(cancellationToken); if (!UtilityTask.IsLogon()) { retryLogMessage = "Login failed"; return(this); } client.Logger.Write("Logged in successfully."); } else { client.Logger.Write("Already logged in."); } if (IsLoginOnly) { return(null); } return(new InitializeBotState()); }
public void Flow_IntegrationTest() { LoginTask login = new LoginTask(); login.BuildEngine = new FakeBuildEngine(); login.CFUser = Settings.Default.User; login.CFPassword = Settings.Default.Password; login.CFServerUri = Settings.Default.ServerUri; login.CFSkipSslValidation = true; login.Execute(); CreateApp task = new CreateApp(); task.CFRefreshToken = login.CFRefreshToken; task.CFServerUri = Settings.Default.ServerUri; task.CFSkipSslValidation = true; task.CFAppName = "testIntegration"; task.CFAppMemory = 512; task.CFAppInstances = 1; task.CFSpace = "TestSpace"; task.CFOrganization = "TestOrg"; task.CFStack = "win2012"; task.CFEnvironmentJson = "{\"mykey\":\"abcd\",\"secondkey\":\"efgh\"}"; task.BuildEngine = new FakeBuildEngine(); task.Execute(); PushApp pushTask = new PushApp(); pushTask.CFUser = Settings.Default.User; pushTask.CFPassword = Settings.Default.Password; pushTask.CFServerUri = Settings.Default.ServerUri; pushTask.CFSkipSslValidation = true; pushTask.CFAppGuid = task.CFAppGuid; pushTask.CFAppPath = Settings.Default.AppPath; pushTask.CFStart = true; pushTask.BuildEngine = new FakeBuildEngine(); pushTask.Execute(); CreateRoutes routeTask = new CreateRoutes(); routeTask.CFUser = Settings.Default.User; routeTask.CFPassword = Settings.Default.Password; routeTask.CFServerUri = Settings.Default.ServerUri; routeTask.CFSkipSslValidation = true; routeTask.CFRoutes = new string[1] { "testRoute.15.126.213.170.xip.io" }; routeTask.CFSpace = "TestSpace"; routeTask.CFOrganization = "TestOrg"; routeTask.BuildEngine = new FakeBuildEngine(); routeTask.Execute(); BindRoutes bindTask = new BindRoutes(); bindTask.CFUser = Settings.Default.User; bindTask.CFPassword = Settings.Default.Password; bindTask.CFServerUri = Settings.Default.ServerUri; bindTask.BuildEngine = new FakeBuildEngine(); bindTask.CFSkipSslValidation = true; bindTask.CFAppGuid = task.CFAppGuid; bindTask.CFRouteGuids = routeTask.CFRouteGuids; bindTask.Execute(); CreateService serviceTask = new CreateService(); serviceTask.CFUser = Settings.Default.User; serviceTask.CFPassword = Settings.Default.Password; serviceTask.CFServerUri = Settings.Default.ServerUri; serviceTask.BuildEngine = new FakeBuildEngine(); serviceTask.CFSkipSslValidation = true; serviceTask.CFServiceName = "testService"; serviceTask.CFServicePlan = "free"; serviceTask.CFServiceType = "mysql"; serviceTask.CFSpace = "TestSpace"; serviceTask.CFOrganization = "TestOrg"; serviceTask.Execute(); BindServices bindServiceTask = new BindServices(); bindServiceTask.CFUser = Settings.Default.User; bindServiceTask.CFPassword = Settings.Default.Password; bindServiceTask.CFServerUri = Settings.Default.ServerUri; bindServiceTask.BuildEngine = new FakeBuildEngine(); bindServiceTask.CFSkipSslValidation = true; bindServiceTask.CFAppGuid = task.CFAppGuid; bindServiceTask.CFServicesGuids = new string[1] { serviceTask.CFServiceGuid }; bindServiceTask.Execute(); if (CheckIfAppIsWorking(routeTask.CFRoutes[0], 3) == true) { DeleteApp delTask = new DeleteApp(); delTask.CFUser = Settings.Default.User; delTask.CFPassword = Settings.Default.Password; delTask.CFServerUri = Settings.Default.ServerUri; delTask.CFSkipSslValidation = true; delTask.CFOrganization = "TestOrg"; delTask.CFSpace = "TestSpace"; delTask.CFAppName = "testIntegration"; delTask.CFDeleteServices = true; delTask.CFDeleteRoutes = true; delTask.BuildEngine = new FakeBuildEngine(); Assert.IsTrue(delTask.Execute()); } else { Assert.Fail("Application is not working"); } }
protected void Page_Load(object sender, EventArgs e) { ContextBusClient cbClient = new ContextBusClient(); //Get Employee definition from adventure works: ConnectionParam[] parameters = cbClient.LoadConnection("advworks", AdvWorksConnectorId); cbClient.Login(parameters, AdvWorksConnectorId); FlyweightObjectDefinition flyweight = new FlyweightObjectDefinition() { Id = "HumanResources.Employee" }; ObjectDefinition employeeObjDef = cbClient.GetObjectDefinitionList(new FlyweightObjectDefinition[] { flyweight }, AdvWorksConnectorId).First(); //Get Team definition from Sharepoint parameters = cbClient.LoadConnection("Sharepoint-Team", "SharePoint"); cbClient.Login(parameters, "SharePoint"); flyweight = new FlyweightObjectDefinition() { Id = "SP|List|/sites/SiteCollection1|Team" }; ObjectDefinition sharepointObjDef = cbClient.GetObjectDefinitionList(new FlyweightObjectDefinition[] { flyweight }, "SharePoint").First(); //build the workflow. TaskManagerClient taskClient = new TaskManagerClient(); //1. Create login task LoginTask login = taskClient.CreateLoginTask(AdvWorksConnectorId, "advworks"); //2. Create Mapping Task MappingTask map = taskClient.CreateMappingTask(sharepointObjDef, employeeObjDef); MappableField field = map.TargetFields.SingleOrDefault(f => f.Id == "p.BusinessEntityID"); field.Mapping.MappingType = MappingType.ConstMapping; field.Mapping.Value = 1; field = map.TargetFields.SingleOrDefault(f => f.Id == "p.EmailPromotion"); field.Mapping.MappingType = MappingType.ConstMapping; field.Mapping.Value = 0; field = map.TargetFields.SingleOrDefault(f => f.Id == "p.Demographics"); field.Mapping.MappingType = MappingType.ConstMapping; field.Mapping.Value = ""; field = map.TargetFields.SingleOrDefault(f => f.Id == "p.NameStyle"); field.Mapping.MappingType = MappingType.ConstMapping; field.Mapping.Value = false; field = map.TargetFields.SingleOrDefault(f => f.Id == "p.PersonType"); field.Mapping.MappingType = MappingType.ConstMapping; field.Mapping.Value = "EM"; field = map.TargetFields.SingleOrDefault(f => f.Id == "p.FirstName"); field.Mapping.MappingType = MappingType.FieldMapping; field.Mapping.Value = "First_x0020_Name"; field = map.TargetFields.SingleOrDefault(f => f.Id == "p.LastName"); field.Mapping.MappingType = MappingType.FieldMapping; field.Mapping.Value = "Last_x0020_Name"; field = map.TargetFields.SingleOrDefault(f => f.Id == "e.JobTitle"); field.Mapping.MappingType = MappingType.FieldMapping; field.Mapping.Value = "Title"; //3. Save Task SaveObjectInstanceTask saveSharepointToEktron = taskClient.CreateSaveObjectTask(AdvWorksConnectorId); //4. Logout Task LogoutTask logout = taskClient.CreateLogoutTask(AdvWorksConnectorId); //5. Assemble and save workflow string workflowName = string.Concat("My Test Workflow"); Workflow workflow = taskClient.CreateWorkflow(workflowName); List <ContextBusTask> tasks = new List <ContextBusTask>(); tasks.Add(login); tasks.Add(map); tasks.Add(saveSharepointToEktron); tasks.Add(logout); workflow.Tasks = tasks.ToArray(); taskClient.SaveWorkflow(workflow); //3. Create associated Event Definitions for workflow. EventManagerClient eventClient = new EventManagerClient(); EventDefinition eventDef = new EventDefinition() { Id = workflowName, Payload = map.SourceObject }; eventClient.AssociateWorkflowsToEvent(new string[] { workflow.WorkflowName }, eventDef); // //Now raise the event to perform the workflow! // //first get sharpeoint item ObjectInstanceCriteriaFilter criteria = new ObjectInstanceCriteriaFilter(); criteria.Filters = new CriteriaFilter[0]; ObjectInstanceList sharepointObjInstance = cbClient.GetObjectInstanceList(sharepointObjDef, criteria, "SharePoint"); //create event instance with sharepoint item EventInstance itemEvent = new EventInstance() { Id = workflowName, Payload = sharepointObjInstance.Results.First() }; //raise the event. eventClient.RaiseEvent(itemEvent); }
public Login() { ReceiveAsync <LoginParam>(async param => { try { var result = new LoginResult() { code = 0, message = "success" }; var device = param.device; var role = param.role; var roleData = getRoleData(role.id); if (param.device == null) { result.code = -12; result.message = "设备不存在"; Sender.Tell(result); return; } var serverApi = InitServerApi(param.role, param.device, roleData); logger.Info("登陆:" + role.username); var task = new LoginTask() { device = device, role = role, serverApi = serverApi, roleData = roleData }; if (!await Context.ActorOf <MemberActor>().Ask <bool>(task)) { result.code = -1; result.message = "获取游戏版本失败"; Sender.Tell(result); return; } if (!await Context.ActorOf <ApiLoginActor>().Ask <bool>(task)) { result.code = -2; result.message = "登陆B站失败"; Sender.Tell(result); return; } if (!await Context.ActorOf <LoginToMemberCenterActor>().Ask <bool>(task)) { result.code = -3; result.message = "登陆游戏失败"; Sender.Tell(result); return; } if (param.home && !await Context.ActorOf <HomeActor>().Ask <bool>(task)) { result.code = -3; result.message = "登陆游戏主页失败"; Sender.Tell(result); return; } result.usk = serverApi.PlatfromInfos["usk"]; Sender.Tell(result); } catch (Exception ex) { Sender.Tell(new LoginResult() { code = -500, message = ex.ToString() }); } }); }
public void Flow_IntegrationTest() { string assemblyDirectory = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location); string appPath = Path.Combine(assemblyDirectory, "TestApp"); LoginTask login = new LoginTask(); login.BuildEngine = new FakeBuildEngine(); login.CFUser = Settings.Default.User; login.CFPassword = Settings.Default.Password; login.CFServerUri = Settings.Default.ServerUri; login.CFSkipSslValidation = true; login.Execute(); CreateApp task = new CreateApp(); task.CFRefreshToken = login.CFRefreshToken; task.CFServerUri = Settings.Default.ServerUri; task.CFSkipSslValidation = true; task.CFAppName = Guid.NewGuid().ToString("N"); task.CFAppMemory = 256; task.CFAppInstances = 1; task.CFSpace = Settings.Default.Space; task.CFOrganization = Settings.Default.Organization; task.CFStack = Settings.Default.Stack; task.CFEnvironmentJson = "{\"mykey\":\"abcd\",\"secondkey\":\"efgh\"}"; task.BuildEngine = new FakeBuildEngine(); task.Execute(); PushApp pushTask = new PushApp(); pushTask.CFUser = Settings.Default.User; pushTask.CFPassword = Settings.Default.Password; pushTask.CFServerUri = Settings.Default.ServerUri; pushTask.CFSkipSslValidation = true; pushTask.CFAppGuid = task.CFAppGuid; pushTask.CFAppPath = appPath; pushTask.CFStart = true; pushTask.BuildEngine = new FakeBuildEngine(); pushTask.Execute(); CreateRoutes routeTask = new CreateRoutes(); routeTask.CFUser = Settings.Default.User; routeTask.CFPassword = Settings.Default.Password; routeTask.CFServerUri = Settings.Default.ServerUri; routeTask.CFSkipSslValidation = true; routeTask.CFRoutes = new string[1] { string.Format(Settings.Default.Route, task.CFAppName) }; routeTask.CFSpace = Settings.Default.Space; routeTask.CFOrganization = Settings.Default.Organization; routeTask.BuildEngine = new FakeBuildEngine(); routeTask.Execute(); BindRoutes bindTask = new BindRoutes(); bindTask.CFUser = Settings.Default.User; bindTask.CFPassword = Settings.Default.Password; bindTask.CFServerUri = Settings.Default.ServerUri; bindTask.BuildEngine = new FakeBuildEngine(); bindTask.CFSkipSslValidation = true; bindTask.CFAppGuid = task.CFAppGuid; bindTask.CFRouteGuids = routeTask.CFRouteGuids; bindTask.Execute(); CreateService serviceTask = new CreateService(); serviceTask.CFUser = Settings.Default.User; serviceTask.CFPassword = Settings.Default.Password; serviceTask.CFServerUri = Settings.Default.ServerUri; serviceTask.BuildEngine = new FakeBuildEngine(); serviceTask.CFSkipSslValidation = true; serviceTask.CFServiceName = Guid.NewGuid().ToString("N"); serviceTask.CFServicePlan = Settings.Default.ServicePlan; serviceTask.CFServiceType = Settings.Default.ServiceType; serviceTask.CFSpace = Settings.Default.Space; serviceTask.CFOrganization = Settings.Default.Organization; serviceTask.Execute(); BindServices bindServiceTask = new BindServices(); bindServiceTask.CFUser = Settings.Default.User; bindServiceTask.CFPassword = Settings.Default.Password; bindServiceTask.CFServerUri = Settings.Default.ServerUri; bindServiceTask.BuildEngine = new FakeBuildEngine(); bindServiceTask.CFSkipSslValidation = true; bindServiceTask.CFAppGuid = task.CFAppGuid; bindServiceTask.CFServicesGuids = new string[1] { serviceTask.CFServiceGuid }; bindServiceTask.Execute(); if (CheckIfAppIsWorking(routeTask.CFRoutes[0], 60) == true) { DeleteApp delTask = new DeleteApp(); delTask.CFUser = Settings.Default.User; delTask.CFPassword = Settings.Default.Password; delTask.CFServerUri = Settings.Default.ServerUri; delTask.CFSkipSslValidation = true; delTask.CFSpace = Settings.Default.Space; delTask.CFOrganization = Settings.Default.Organization; delTask.CFAppName = task.CFAppName; delTask.CFDeleteServices = true; delTask.CFDeleteRoutes = true; delTask.BuildEngine = new FakeBuildEngine(); Assert.IsTrue(delTask.Execute()); } else { Assert.Fail("Application is not working"); } }
private bool RunTasks(string manifest, string host, string appPath) { LoginTask login = new LoginTask(); login.BuildEngine = new FakeBuildEngine(); login.CFUser = Settings.Default.User; login.CFPassword = Settings.Default.Password; login.CFServerUri = Settings.Default.ServerUri; login.CFManifest = manifest; login.CFSkipSslValidation = true; login.Execute(); CreateApp task = new CreateApp(); task.CFRefreshToken = login.CFRefreshToken; task.CFServerUri = Settings.Default.ServerUri; task.CFSkipSslValidation = true; task.CFSpace = Settings.Default.Space; task.CFOrganization = Settings.Default.Organization; task.CFManifest = manifest; task.BuildEngine = new FakeBuildEngine(); task.Execute(); PushApp pushTask = new PushApp(); pushTask.CFUser = Settings.Default.User; pushTask.CFPassword = Settings.Default.Password; pushTask.CFServerUri = Settings.Default.ServerUri; pushTask.CFSkipSslValidation = true; pushTask.CFManifest = manifest; pushTask.CFOrganization = Settings.Default.Organization; pushTask.CFSpace = Settings.Default.Space; pushTask.CFAppPath = appPath; pushTask.BuildEngine = new FakeBuildEngine(); pushTask.Execute(); CreateRoutes routeTask = new CreateRoutes(); routeTask.CFUser = Settings.Default.User; routeTask.CFPassword = Settings.Default.Password; routeTask.CFServerUri = Settings.Default.ServerUri; routeTask.CFSkipSslValidation = true; routeTask.CFManifest = manifest; routeTask.CFSpace = Settings.Default.Space; routeTask.CFOrganization = Settings.Default.Organization; routeTask.BuildEngine = new FakeBuildEngine(); routeTask.Execute(); BindRoutes bindTask = new BindRoutes(); bindTask.CFUser = Settings.Default.User; bindTask.CFPassword = Settings.Default.Password; bindTask.CFServerUri = Settings.Default.ServerUri; bindTask.BuildEngine = new FakeBuildEngine(); bindTask.CFSkipSslValidation = true; bindTask.CFManifest = manifest; bindTask.CFOrganization = Settings.Default.Organization; bindTask.CFSpace = Settings.Default.Space; bindTask.Execute(); BindServices bindServiceTask = new BindServices(); bindServiceTask.CFUser = Settings.Default.User; bindServiceTask.CFPassword = Settings.Default.Password; bindServiceTask.CFServerUri = Settings.Default.ServerUri; bindServiceTask.BuildEngine = new FakeBuildEngine(); bindServiceTask.CFSkipSslValidation = true; bindServiceTask.CFManifest = manifest; bindServiceTask.CFOrganization = Settings.Default.Organization; bindServiceTask.CFSpace = Settings.Default.Space; bindServiceTask.Execute(); RestartApp restartTask = new RestartApp(); restartTask.BuildEngine = new FakeBuildEngine(); restartTask.CFUser = Settings.Default.User; restartTask.CFPassword = Settings.Default.Password; restartTask.CFServerUri = Settings.Default.ServerUri; restartTask.CFManifest = manifest; restartTask.CFSkipSslValidation = true; restartTask.CFOrganization = Settings.Default.Organization; restartTask.CFSpace = Settings.Default.Space; restartTask.Execute(); if (CheckIfAppIsWorking(string.Format(CultureInfo.InvariantCulture, "{0}.{1}", host, Settings.Default.Domain), 60) == true) { DeleteApp delTask = new DeleteApp(); delTask.CFUser = Settings.Default.User; delTask.CFPassword = Settings.Default.Password; delTask.CFServerUri = Settings.Default.ServerUri; delTask.CFSkipSslValidation = true; delTask.CFSpace = Settings.Default.Space; delTask.CFOrganization = Settings.Default.Organization; delTask.CFManifest = manifest; delTask.CFDeleteServices = true; delTask.CFDeleteRoutes = true; delTask.BuildEngine = new FakeBuildEngine(); return(delTask.Execute()); } else { return(false); } }
public BoxGachaDraw() { ReceiveAsync <user_role>(async role => { var device = getDevice(role.device_id); var result = new LoginResult(); var loginResult = await Context.ActorOf <Login>().Ask <LoginResult>(new LoginParam() { device = device, role = role }); if (loginResult.code != 0) { Sender.Tell(loginResult); return; } var roleData = getRoleData(role.id); var serverApi = InitServerApi(role, device, roleData); var task = new LoginTask() { device = device, role = role, serverApi = serverApi, roleData = roleData }; var home = await Context.ActorOf <HomeActor>().Ask <bool>(task); if (!home) { result.code = -1; result.message = "进入首页失败"; Sender.Tell(result); return; } if (serverApi.userItem == null && roleData.user_item != null) { serverApi.userItem = JsonConvert.DeserializeObject <List <HomeUseritem> >(roleData.user_item); } logger.Info("进入首页成功"); if (serverApi.userItem == null) { result.code = -1; result.message = "用户道具信息获取失败"; Sender.Tell(result); return; } var boxId = "800051"; int boxBaseId = 0; var drawNum = 0; var itemId = "94001204"; var boxGacha = AssetManage.Database.mstBoxGacha.Where(b => b.id == boxId).FirstOrDefault(); if (serverApi.userBoxGacha != null && serverApi.userBoxGacha.Any(u => u.boxGachaId == boxId)) { var userBoxGacha = serverApi.userBoxGacha.Where(u => u.boxGachaId == boxId).FirstOrDefault(); drawNum = userBoxGacha.drawNum; boxBaseId = userBoxGacha.boxIndex; } while (true) { var boxNum = AssetManage.Database.mstBoxGachaBase.Where(b => b.id == boxGacha.baseIds[boxBaseId]).Sum(b => b.maxNum); if (boxNum == 0) { logger.Info("boxNum为空"); result.code = -1; Sender.Tell(result); return; } var num = boxNum - drawNum > 10 ? 10 : boxNum - drawNum; var item = serverApi.userItem.Where(i => i.itemId == itemId).FirstOrDefault(); if (item == null || item.num < 20) { logger.Warn("素材已经用完"); result.code = 0; Sender.Tell(result); return; } logger.Info("目前素材:" + item.num); var drawResult = await serverApi.Boxgachadraw(boxId, num); if (drawResult.code != 0) { logger.Error("抽奖出错"); logger.Error(drawResult.message); logger.Error(drawResult.RequestMessage); result.code = -500; result.message = "抽奖出错"; Sender.Tell(result); return; } boxBaseId = drawResult.cache.updated.userBoxGacha[0].boxIndex; drawNum = drawResult.cache.updated.userBoxGacha[0].drawNum; try { logger.Info("抽奖总数:" + drawResult.cache.updated.userBoxGacha[0].drawNum); } catch (Exception) { } logger.Info("抽奖成功"); await Task.Delay(1000); if (drawResult.cache.updated.userBoxGacha[0].isReset) { var nos = JsonConvert.DeserializeObject <int[]>(drawResult.cache.updated.userBoxGachaDeck[0].boxGachaBaseNo); if (nos.Length == drawResult.cache.updated.userBoxGacha[0].drawNum) { logger.Info("抽奖完成一次,当前第" + drawResult.cache.updated.userBoxGacha[0].resetNum + "次"); } else { continue; } var resetRes = await serverApi.Boxgachareset(boxId); if (resetRes.code != 0) { logger.Error("抽奖重置出错"); logger.Error(resetRes.message); logger.Error(resetRes.RequestMessage); result.code = -500; result.message = "抽奖重置出错"; Sender.Tell(result); return; } boxBaseId = resetRes.cache.updated.userBoxGacha[0].boxIndex; drawNum = 0; logger.Info("抽奖重置成功"); } } }); }
protected void Page_Load(object sender, EventArgs e) { ContextBusClient cbClient = new ContextBusClient(); ConnectionParam[] parameters = cbClient.LoadConnection("Advworks", AdvWorksConnectorId); cbClient.Login(parameters, AdvWorksConnectorId); FlyweightObjectDefinition[] flyweights = cbClient.GetObjectDefinitionNameList(AdvWorksConnectorId); lvObjects.DataSource = flyweights; lvObjects.DataBind(); List <ObjectDefinition> objDefList = cbClient.GetObjectDefinitionList(flyweights, AdvWorksConnectorId).ToList(); ObjectInstanceCriteriaFilter criteria = new ObjectInstanceCriteriaFilter(); ObjectInstanceList objectInstanceReturn = cbClient.GetObjectInstanceList(objDefList.First(), criteria, AdvWorksConnectorId); lvObjectInstances.DataSource = objectInstanceReturn.Results; lvObjectInstances.DataBind(); //Lets map a sharepoint object to AdventureWorks //Get Sharepoint ObjectDefinition FlyweightObjectDefinition flyweight = new FlyweightObjectDefinition() { Id = "SP|List|/sites/SiteCollection1|Team" }; ObjectDefinition sharepointObjDef = cbClient.GetObjectDefinitionList(new FlyweightObjectDefinition[] { flyweight }, "SharePoint").First(); //Get Employee definition from adventure works: ObjectDefinition employeeObjDef = objDefList.Find(d => d.DisplayName == "Employee"); //build the workflow. TaskManagerClient taskClient = new TaskManagerClient(); //1. Create login task LoginTask login = taskClient.CreateLoginTask(AdvWorksConnectorId, ""); //2. Create Mapping Task MappingTask map = taskClient.CreateMappingTask(sharepointObjDef, employeeObjDef); MappableField field = map.TargetFields.SingleOrDefault(f => f.Id == "BusinessEntityID"); field.Mapping.MappingType = MappingType.ConstMapping; field.Mapping.Value = 1; field = map.TargetFields.SingleOrDefault(f => f.Id == "PersonType"); field.Mapping.MappingType = MappingType.ConstMapping; field.Mapping.Value = "EM"; field = map.TargetFields.SingleOrDefault(f => f.Id == "FirstName"); field.Mapping.MappingType = MappingType.FieldMapping; field.Mapping.Value = map.SourceObject.Fields.SingleOrDefault(f => f.Id == "First_x0020_Name"); field = map.TargetFields.SingleOrDefault(f => f.Id == "LastName"); field.Mapping.MappingType = MappingType.FieldMapping; field.Mapping.Value = map.SourceObject.Fields.SingleOrDefault(f => f.Id == "last_x0020_name"); field = map.TargetFields.SingleOrDefault(f => f.Id == "JobTitle"); field.Mapping.MappingType = MappingType.FieldMapping; field.Mapping.Value = map.SourceObject.Fields.SingleOrDefault(f => f.Id == "Title"); //3. Save Task SaveObjectInstanceTask saveSharepointToEktron = taskClient.CreateSaveObjectTask(AdvWorksConnectorId); //4. Logout Task LogoutTask logout = taskClient.CreateLogoutTask(AdvWorksConnectorId); }