コード例 #1
0
 public bool TryGetVFSError(out VFSErrorCode error)
 {
     if (Enum.IsDefined(typeof(VFSErrorCode), base.ErrorCode))
     {
         error = (VFSErrorCode)base.ErrorCode;
         return(true);
     }
     else
     {
         error = default;
         return(false);
     }
 }
コード例 #2
0
        /// <summary>
        /// 检查配置 (检查所有项目), 如果检查通过返回true, 否则返回false
        /// </summary>
        /// <param name="config"></param>
        /// <param name=""></param>
        /// <param name="errorfolders">如果有group内folder相关的错误,则在此处体现</param>
        /// <returns>if error ,return false</returns>
        public static bool CheckConfiguration(IVFSConfig config, out VFSErrorCode error, out GroupFolderInfo[] errorfolders)
        {
            errorfolders = null;

            #region 没有任何Group?
            if (config.PGroups == null || config.PGroups.Length == 0)
            {
                error = VFSErrorCode.NoneGroup;
                return(false);
            }
            #endregion

            #region 检查组名称是否重复
            List <string> temp_list = new List <string>();
            foreach (var group in config.PGroups)
            {
                if (temp_list.Contains(group.GroupName))
                {
                    //存在重复命名
                    error = VFSErrorCode.SameGroupName;
                    return(false);
                }
                else
                {
                    temp_list.Add(group.GroupName);
                }
            }


            #endregion

            #region 检查各组的folder配置是否冲突
            if (CheckConfig_GroupFolder(ref config, out var folders))
            {
                errorfolders = folders;
                error        = VFSErrorCode.ConfigureGroupsConflict;
                return(false);
            }

            #endregion

            error = default;
            return(true);
        }
コード例 #3
0
 public VFSException(string message, VFSErrorCode errorCode) : base("[TinaX.VFS]" + message, (int)errorCode)
 {
     base.ServiceException = true; base.ServiceName = TinaX.VFSKit.Const.VFSConst.ServiceName;
 }