OpenTween.Twitter.GetApiResultCount C# (CSharp) Method

GetApiResultCount() public static method

WORKERTYPEに応じた取得件数を取得する
public static GetApiResultCount ( MyCommon type, bool more, bool startup ) : int
type MyCommon
more bool
startup bool
return int
        public static int GetApiResultCount(MyCommon.WORKERTYPE type, bool more, bool startup)
        {
            if (type == MyCommon.WORKERTYPE.DirectMessegeRcv ||
                type == MyCommon.WORKERTYPE.DirectMessegeSnt)
            {
                return 20;
            }

            if (SettingCommon.Instance.UseAdditionalCount)
            {
                switch (type)
                {
                    case MyCommon.WORKERTYPE.Favorites:
                        if (SettingCommon.Instance.FavoritesCountApi != 0)
                            return SettingCommon.Instance.FavoritesCountApi;
                        break;
                    case MyCommon.WORKERTYPE.List:
                        if (SettingCommon.Instance.ListCountApi != 0)
                            return SettingCommon.Instance.ListCountApi;
                        break;
                    case MyCommon.WORKERTYPE.PublicSearch:
                        if (SettingCommon.Instance.SearchCountApi != 0)
                            return SettingCommon.Instance.SearchCountApi;
                        break;
                    case MyCommon.WORKERTYPE.UserTimeline:
                        if (SettingCommon.Instance.UserTimelineCountApi != 0)
                            return SettingCommon.Instance.UserTimelineCountApi;
                        break;
                }
                if (more && SettingCommon.Instance.MoreCountApi != 0)
                {
                    return Math.Min(SettingCommon.Instance.MoreCountApi, GetMaxApiResultCount(type));
                }
                if (startup && SettingCommon.Instance.FirstCountApi != 0 && type != MyCommon.WORKERTYPE.Reply)
                {
                    return Math.Min(SettingCommon.Instance.FirstCountApi, GetMaxApiResultCount(type));
                }
            }

            // 上記に当てはまらない場合の共通処理
            var count = SettingCommon.Instance.CountApi;

            if (type == MyCommon.WORKERTYPE.Reply)
                count = SettingCommon.Instance.CountApiReply;

            return Math.Min(count, GetMaxApiResultCount(type));
        }