private void ReadUser(Gitlab.Api.Library.Gitlab gitlab, string id)
 {
     gitlab.RequestUser(id, (User user) =>
         {
             // ユーザー情報取得
         });
 }
 private void ReadProject(Gitlab.Api.Library.Gitlab gitlab, string id)
 {
     gitlab.RequestProject(id, (Project project) =>
         {
             // プロジェクト情報取得
         });
 }
Example #3
0
        private async void TestButtonClickHandler(object sender, RoutedEventArgs e)
        {
            Gitlab.Api.Library.Gitlab gitlab = new Gitlab.Api.Library.Gitlab(this.url.Text);

            gitlab.ErrorAction = (Exception exception) =>
            {
                // TODO:例外発生時の処理
            };

            var ptr = Marshal.SecureStringToGlobalAllocUnicode(this.password.SecurePassword);

            try
            {
                // セキュア文字列を平文へ変換
                string password = Marshal.PtrToStringUni(ptr);

                // セッションの取得
                gitlab.RequestSession(this.email.Text, password, (bool saccess) =>
                {
                    gitlab.RequestProjects((List <Project> result) =>
                    {
                        // プロジェクトリスト取得
                    });

                    gitlab.RequestUsers((List <User> result) =>
                    {
                        // プロジェクトリスト取得
                    });
                });
            }
            finally
            {
                Marshal.ZeroFreeGlobalAllocUnicode(ptr);
            }

            /*
             * using (StreamReader r = new StreamReader(@"projects.json"))
             * {
             *  string responseBody = r.ReadLine();
             *
             *  List<Project> projects = ProjectsFactory.Create(responseBody);
             * }
             */
        }
        private async void TestButtonClickHandler(object sender, RoutedEventArgs e)
        {
            Gitlab.Api.Library.Gitlab gitlab = new Gitlab.Api.Library.Gitlab(this.url.Text);

            gitlab.ErrorAction = (Exception exception) =>
                {
                    // TODO:例外発生時の処理
                };

            var ptr = Marshal.SecureStringToGlobalAllocUnicode(this.password.SecurePassword);

            try
            {
                // セキュア文字列を平文へ変換
                string password = Marshal.PtrToStringUni(ptr);

                // セッションの取得
                gitlab.RequestSession(this.email.Text, password, (bool saccess) =>
                {
                    gitlab.RequestProjects((List<Project> result) =>
                    {
                        // プロジェクトリスト取得
                    });

                    gitlab.RequestUsers((List<User> result) =>
                    {
                        // プロジェクトリスト取得
                    });
                });
            }
            finally
            {
                Marshal.ZeroFreeGlobalAllocUnicode(ptr);
            }

            /*
            using (StreamReader r = new StreamReader(@"projects.json"))
            {
                string responseBody = r.ReadLine();

                List<Project> projects = ProjectsFactory.Create(responseBody);
            }
            */
        }
        private async void TestButtonClickHandler(object sender, RoutedEventArgs e)
        {
            Gitlab.Api.Library.Gitlab gitlab = new Gitlab.Api.Library.Gitlab(this.url.Text);

            gitlab.ErrorAction = (Exception exception) =>
                {
                    // TODO:例外発生時の処理
                };

            var ptr = Marshal.SecureStringToGlobalAllocUnicode(this.password.SecurePassword);

            try
            {
                // セキュア文字列を平文へ変換
                string password = Marshal.PtrToStringUni(ptr);

                // セッションの取得
                gitlab.RequestSession(this.email.Text, password, (bool saccess) =>
                {
                    gitlab.RequestProjects((List<Project> result) =>
                    {
                        // プロジェクトリスト取得
                        this.ReadProject(gitlab, result[0].Id);
                    });

                    gitlab.RequestUsers((List<User> result) =>
                    {
                        // ユーザーリスト取得
                        this.ReadUser(gitlab, result[0].Id);
                    });
                });
            }
            finally
            {
                Marshal.ZeroFreeGlobalAllocUnicode(ptr);
            }
        }