<commit_before>﻿using System;
using System.Reactive;
using System.Reactive.Threading.Tasks;
using Octokit.Reactive.Internal;

namespace Octokit.Reactive
{
    public class ObservableOrganizationTeamsClient : IObservableOrganizationTeamsClient
    {
        readonly IConnection _connection;

        /// <summary>
        /// Initializes a new Organization Teams API client.
        /// </summary>
        /// <param name="client">An <see cref="IGitHubClient" /> used to make the requests</param>
        public ObservableOrganizationTeamsClient(IGitHubClient client)
        {
            Ensure.ArgumentNotNull(client, "client");
            _connection = client.Connection;
        }

        public IObservable<TeamItem> GetAllTeams(string org)
        {
            Ensure.ArgumentNotNullOrEmptyString(org, "org");

            return _connection.GetAndFlattenAllPages<TeamItem>(ApiUrls.OrganizationTeams(org));
        }

        public IObservable<Team> CreateTeam(string org, NewTeam team)
        {
            throw new NotImplementedException();
        }

        public IObservable<Team> UpdateTeam(int id, UpdateTeam team)
        {
            throw new NotImplementedException();
        }

        public IObservable<Unit> DeleteTeam(int id)
        {
            throw new NotImplementedException();
        }
    }
}<commit_msg>implement all the other methods<commit_after>﻿using System;
using System.Reactive;
using System.Reactive.Threading.Tasks;
using Octokit.Reactive.Internal;

namespace Octokit.Reactive
{
    public class ObservableOrganizationTeamsClient : IObservableOrganizationTeamsClient
    {
        readonly IConnection _connection;
        readonly ITeamsClient _client;

        /// <summary>
        /// Initializes a new Organization Teams API client.
        /// </summary>
        /// <param name="client">An <see cref="IGitHubClient" /> used to make the requests</param>
        public ObservableOrganizationTeamsClient(IGitHubClient client)
        {
            Ensure.ArgumentNotNull(client, "client");
            _connection = client.Connection;
            _client = client.Organization.Team;
        }

        public IObservable<TeamItem> GetAllTeams(string org)
        {
            Ensure.ArgumentNotNullOrEmptyString(org, "org");
            return _connection.GetAndFlattenAllPages<TeamItem>(ApiUrls.OrganizationTeams(org));
        }

        public IObservable<Team> CreateTeam(string org, NewTeam team)
        {
            return _client.CreateTeam(org, team).ToObservable();
        }

        public IObservable<Team> UpdateTeam(int id, UpdateTeam team)
        {
            return _client.UpdateTeam(id, team).ToObservable();
        }

        public IObservable<Unit> DeleteTeam(int id)
        {
            return _client.DeleteTeam(id).ToObservable();
        }
    }
}
{'fraction_non_alphanumeric': 0.08985200845665962, 'fraction_numerical': 0.0, 'mean_word_length': 2.5092707045735474, 'pattern_counts': {'":': 0, '<': 23, '<?xml version=': 0, '>': 23, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '1461311', 'n_tokens_mistral': 754, 'n_tokens_neox': 750, 'n_words': 158}