public static ShareState reducer(ShareState old, object action) { switch (action) { case BuildFinishAction build: return(old.CopyWith( buildOutputDir: build.outputDir, buildGUID: build.buildGUID )); case ZipPathChangeAction zip: return(old.CopyWith( zipPath: zip.zipPath, step: ShareStep.Zip )); case UploadStartAction upload: return(old.CopyWith(step: ShareStep.Upload)); case QueryProgressAction query: return(old.CopyWith( step: ShareStep.Process, key: query.key )); case UploadProgressAction upload: ConnectShareEditorWindow.OnUploadProgress(upload.progress); return(old); case QueryProgressResponseAction queryResponse: ShareStep?step = null; if (queryResponse.response.progress == 100) { step = ShareStep.Idle; } ConnectShareEditorWindow.OnProcessingProgress(queryResponse.response.progress); return(old.CopyWith( url: queryResponse.response.url, step: step )); case TitleChangeAction titleChangeAction: return(old.CopyWith(title: titleChangeAction.title)); case DestroyAction destroyAction: return(new ShareState(buildOutputDir: old.buildOutputDir, buildGUID: old.buildGUID)); case OnErrorAction errorAction: return(old.CopyWith(errorMsg: errorAction.errorMsg)); case StopUploadAction stopUploadAction: return(new ShareState(buildOutputDir: old.buildOutputDir, buildGUID: old.buildGUID)); case NotLoginAction login: return(old.CopyWith(step: ShareStep.Login)); case LoginAction login: return(old.CopyWith(step: ShareStep.Idle)); } return(old); }
public MegacoolShare(MegacoolReferralCode referralCode, ShareState state, DateTime createdAt, DateTime updatedAt, Dictionary <string, object> data, Uri url) { ReferralCode = referralCode; State = state; CreatedAt = createdAt; UpdatedAt = updatedAt; Data = data; Url = url; }
public override void Process() { if (status == GoalStatus.Inactive) { Activate(); } if (status == GoalStatus.Failed) { return; } Goal child = GetActiveGoal(); if (child.IsInactive) { child.Activate(); } if (squad.IsDisband) { status = GoalStatus.Failed; } else { //squad.DebugLine(); } switch (shareState) { case ShareState.Pursuit: if (child.IsComplete) { if (iAmLeader) { AddSubgoal(new GoalTalk(owner, partner, memoryType, iAmLeader)); shareState = ShareState.Talk; } else { AddSubgoal(new GoalLookAt(owner, partner)); shareState = ShareState.Talk; } } break; } base.ProcessSubgoals(); }
public async Task <Playlist> CreatePlaylist(string name, string description, ShareState state = ShareState.Private) { if (!CheckSession()) { return(null); } var request = MakeRequest <Playlists>(); var data = await request.GetAsync(new PlaylistsRequest(Session) { CreationTimestamp = "-1", Deleted = false, Description = description, LastModifiedTimestamp = Time.GetCurrentTimestamp(), Name = name, ShareState = state, Type = PlaylistType.UserGenerated }); return(data); }
public static ShareState reducer(ShareState old, object action) { switch (action) { case BuildFinishAction build: return(old.copyWith( buildOutputDir: build.outputDir, buildGUID: build.buildGUID )); case ZipPathChangeAction zip: return(old.copyWith( zipPath: zip.zipPath, step: ShareStep.zip )); case UploadStartAction upload: return(old.copyWith( step: ShareStep.upload )); case QueryProgressAction query: int?progress = null; if (old.step != ShareStep.process) { progress = 0; } return(old.copyWith( step: ShareStep.process, key: query.key, progress: progress )); case UploadProgressAction upload: return(old.copyWith(progress: upload.progress)); case QueryProgressResponseAction queryResponse: ShareStep?step = null; if (queryResponse.response.progress == 100) { step = ShareStep.idle; } return(old.copyWith( progress: queryResponse.response.progress, url: queryResponse.response.url, step: step )); case ThumbnailSelectAction thumbnailAction: return(old.copyWith(thumbnailDir: thumbnailAction.thumbnailDir)); case TitleChangeAction titleChangeAction: return(old.copyWith(title: titleChangeAction.title)); case DestroyAction destroyAction: return(new ShareState(buildOutputDir: old.buildOutputDir, buildGUID: old.buildGUID)); case OnErrorAction errorAction: return(old.copyWith(errorMsg: errorAction.errorMsg)); case StopUploadAction stopUploadAction: return(new ShareState(buildOutputDir: old.buildOutputDir, buildGUID: old.buildGUID)); case NotLoginAction login: return(old.copyWith( step: ShareStep.login )); case LoginAction login: return(old.copyWith( step: ShareStep.idle )); } return(old); }
public AppState(ShareState shareState = null) { this.shareState = shareState; }