public virtual void Interpret(IStoreModel storeModel, ModelBuilder receiver)
        {
            CheckValue.NotNull(storeModel, nameof(storeModel));
            CheckValue.NotNull(receiver, nameof(receiver));

            var efEntities     = receiver.Model.GetEntityTypes();
            var configEntities = storeModel.GetStoreEntities();

            foreach (StoreEntityType configEntity in configEntities)
            {
                var clrType = configEntity.ClrType;

                foreach (var efEntity in efEntities)
                {
                    var efClrType = efEntity.ClrType;

                    if (clrType.IsAssignableFrom(efClrType) || TypeHelper.IsImplementedGenericInterface(efClrType, clrType))
                    {
                        foreach (var configStrategy in _options.Strategies)
                        {
                            configStrategy.Config(receiver, configEntity, efClrType);
                        }
                    }
                }
            }
        }
Example #2
0
        public Task <(ClaimsPrincipal, JwtSecurityToken)> DecodeJwtToken(string token, CancellationToken cancellationToken = default)
        {
            CheckValue.NotNullOrWhiteSpace(token, "Invalid token");

            var principal = new JwtSecurityTokenHandler()
                            .ValidateToken(token,
                                           new TokenValidationParameters
            {
                ValidateIssuer           = true,
                ValidIssuer              = _jwtOptions.Issuer,
                ValidateIssuerSigningKey = true,
                IssuerSigningKey         = new SymmetricSecurityKey(_jwtOptions.SecurityKey),
                ValidAudience            = _jwtOptions.Audience,
                ValidAlgorithms          = new List <string>()
                {
                    _jwtOptions.Algorithm
                },
                ValidateAudience = true,
                ValidateLifetime = true,
                ClockSkew        = TimeSpan.FromMinutes(1)
            },
                                           out var validatedToken);

            return(Task.FromResult((principal, validatedToken as JwtSecurityToken)));
        }
        private bool _Validation()
        {
            if (!CheckValue.Check(Commission.Date))
            {
                MessageBox.Show("Поле 'Дата ДКП' не заполнено");
                return(false);
            }

            if (!CheckValue.Check(Commission.Seller))
            {
                MessageBox.Show("Не указан продавец");
                return(false);
            }


            if (!CheckValue.Check(Commission.Trancport))
            {
                MessageBox.Show("Не указано транспортное средство");
                return(false);
            }

            if (!CheckValue.Check(Commission.Price))
            {
                MessageBox.Show("Поле 'стоимость ТС' не заполнено");
                return(false);
            }
            if (Commission.IsUseCardTrancport && !CheckValue.Check(Commission.SourceTrancport))
            {
                MessageBox.Show("Поле 'условаие постановки' не заполнено");
                return(false);
            }
            if (IsProxy)
            {
                if (!CheckValue.Check(Commission.NumberProxy))
                {
                    MessageBox.Show("Поле 'номер довереность' не заполнено");
                    return(false);
                }

                if (!CheckValue.Check(Commission.NumberRegistry))
                {
                    MessageBox.Show("Поле 'номер в реестре' не заполнено");
                    return(false);
                }

                if (!CheckValue.Check(Commission.DateProxy))
                {
                    MessageBox.Show("Поле 'дата довереность' не заполнено");
                    return(false);
                }

                if (!CheckValue.Check(Commission.Owner))
                {
                    MessageBox.Show("Не указаг собственник");
                    return(false);
                }
            }

            return(true);
        }
Example #4
0
        public RefreshToken(string subjectId, ClaimsPrincipal subject)
        {
            CheckValue.NotNullOrWhiteSpace(subjectId, nameof(subjectId));

            SubjectId = subjectId;
            Subject   = subject;
        }
        /// <summary>
        /// Add your user information to the MiCake, which will be tracked automatically.
        /// </summary>
        /// <param name="builder"><see cref="IMiCakeBuilder"/></param>
        /// <param name="miCakeUserType"><see cref="IMiCakeUser{TKey}"/></param>
        /// <returns></returns>
        public static IMiCakeBuilder AddIdentityCore(this IMiCakeBuilder builder, Type miCakeUserType)
        {
            CheckValue.NotNull(miCakeUserType, nameof(miCakeUserType));

            if (!typeof(IMiCakeUser).IsAssignableFrom(miCakeUserType))
            {
                throw new ArgumentException($"Wrong user type,must use {nameof(IMiCakeUser)} to register your micake user.");
            }

            builder.ConfigureApplication((app, services) =>
            {
                //Add identity module.
                app.ModuleManager.AddMiCakeModule(typeof(MiCakeIdentityModule));

                //Early registration IdentityAuditProvider.
                var userKeyType = TypeHelper.GetGenericArguments(miCakeUserType, typeof(IMiCakeUser <>));

                if (userKeyType == null || userKeyType[0] == null)
                {
                    throw new ArgumentException($"Can not get the primary key type of IMiCakeUser,Please check your config when AddIdentity().");
                }

                var auditProviderType = typeof(IdentityAuditProvider <>).MakeGenericType(userKeyType[0]);
                services.AddScoped(typeof(IAuditProvider), auditProviderType);
            });

            return(builder);
        }
Example #6
0
        /// <summary>
        /// Add the property information required for the persistence object
        /// </summary>
        public virtual StoreProperty AddProperty(string name, MemberInfo memberInfo)
        {
            CheckValue.NotNull(name, nameof(name));
            CheckValue.NotNull(memberInfo, nameof(memberInfo));

            // Currently, only property configuration is supported.
            // If memberinfo is a field type, an error will also be prompted
            if (memberInfo.MemberType != MemberTypes.Property)
            {
                throw new InvalidOperationException($"The {nameof(AddProperty)} method only property is supported," +
                                                    $" but the parameter '{nameof(memberInfo)}' type is {memberInfo.MemberType}.");
            }

            var propertyType = memberInfo.GetMemberType();
            var property     = new StoreProperty(name,
                                                 propertyType,
                                                 memberInfo as PropertyInfo,
                                                 memberInfo as FieldInfo,
                                                 memberInfo,
                                                 this);

            _properties.Add(name, property);

            return(property);
        }
Example #7
0
        /// <summary>
        /// Add the property information required for the persistence object
        /// </summary>
        public virtual StorePropertyBuilder Property(string propertyName, MemberInfo clrMemberInfo)
        {
            CheckValue.NotNull(propertyName, nameof(propertyName));
            CheckValue.NotNull(clrMemberInfo, nameof(clrMemberInfo));

            return(new StorePropertyBuilder(_builer.AddProperty(propertyName, clrMemberInfo).Metadata));
        }
Example #8
0
        public IConventionStoreEntityBuilder AddQueryFilter(LambdaExpression expression)
        {
            CheckValue.NotNull(expression, nameof(expression));
            Metadata.AddQueryFilter(expression);

            return(this);
        }
Example #9
0
        /// <summary>
        /// Created handler descriptors according to <see cref="IServiceProvider"/> and <see cref="IMiCakeHandler"/> to be created
        /// </summary>
        /// <param name="serviceProvider">The <see cref="IServiceProvider"/> who is the container for <see cref="IMiCakeHandler"/></param>
        /// <param name="handlers">all <see cref="IMiCakeHandler"/></param>
        /// <returns>All handlers descriptor</returns>
        public static List <MiCakeHandlerDescriptor> CreateHandlerDescriptors(IServiceProvider serviceProvider, IEnumerable <IMiCakeHandler> handlers)
        {
            CheckValue.NotNull(serviceProvider, nameof(serviceProvider));

            var result = new List <MiCakeHandlerDescriptor>();

            if (handlers.Count() == 0)
            {
                return(result);
            }

            foreach (var handler in handlers)
            {
                if (handler is IMiCakeHandlerFactory handlerFactory)
                {
                    var handlerInstance = handlerFactory.CreateInstance(serviceProvider);

                    if (handlerInstance != null)
                    {
                        result.Add(new MiCakeHandlerDescriptor(handlerInstance, true));
                    }
                }
                else
                {
                    result.Add(new MiCakeHandlerDescriptor(handler));
                }
            }

            return(result);
        }
Example #10
0
        internal static ImperialDate ConvertFromDateTime(DateTime date)
        {
            // Since DateTime is an earth construct, assume Terra
            const CheckValue checkValue = CheckValue.Terra;

            if (date.Equals(DateTime.MinValue))
            {
                return(new ImperialDate(checkValue, 1, 1, 0));
            }

            var yearRemaining = date - date.LastDayOfYear();
            var day           = Math.Floor(yearRemaining.TotalMilliseconds / (1000.00 * SecondsInDay));

            var daySeconds    = (day * SecondsInDay) - SecondsInDay;
            var hourSeconds   = date.Hour * SecondsInHour;
            var minuteSeconds = date.Minute * SecondsInMinute;
            var seconds       = date.Second;

            var secondsElapsed = daySeconds + hourSeconds + minuteSeconds + seconds;


            var yearFraction = (int)Math.Floor(secondsElapsed / date.SecondsInYear() * 1000);

            var year = date.Year % 1000;

            var millennium = (int)Math.Ceiling(date.Year / 1000.00);

            return(new ImperialDate(checkValue, yearFraction, year, millennium));
        }
Example #11
0
        public void RunRangeChecks(TestRange[] testRanges, CheckValue[] checkValues)
        {
            uint       initialValue = testRanges[0].Value;
            const uint errorValue   = 0x0bad;

            var builder = new UnicodeTrieBuilder(initialValue, errorValue);

            for (int i = 1; i < testRanges.Length; i++)
            {
                TestRange r = testRanges[i];
                builder.SetRange(r.Start, r.End - 1, r.Value, r.Overwrite);
            }

            UnicodeTrie frozen = builder.Freeze();

            int cp = 0;

            for (int i = 0; i < checkValues.Length; i++)
            {
                CheckValue v = checkValues[i];

                while (cp < v.CodePoint)
                {
                    Assert.Equal(v.Value, builder.Get(cp));
                    Assert.Equal(v.Value, frozen.Get(cp));
                    cp++;
                }
            }
        }
Example #12
0
        public static ICheckedValue CheckRightfulness(CheckValue checkValues)
        {
            var checkedValues = new CheckValue();

            //TelnetEnabledチェック
            if (!bool.TryParse(checkValues.TelnetEnabled, out bool telnetEnabled))
            {
                ApplyFailed(string.Format(LangResources.Resources._0_Is_Invalid, "TelnetEnabled"), checkedValues);
            }
            if (!telnetEnabled)
            {
                ApplyFailed(string.Format(LangResources.Resources._0_is_1, "TelnetEnabled", "False"), checkedValues);
            }

            // ポート被りチェック
            if (checkValues.TelnetPort.Equals(checkValues.ControlPanelPort))
            {
                ApplyFailed(string.Format(LangResources.Resources.Same_Port_as_0_has_been_used_in_1,
                                          "TelnetPort", "ControlPanelPort"), checkedValues);
            }
            if (checkValues.TelnetPort.Equals(checkValues.ServerPort))
            {
                ApplyFailed(string.Format(LangResources.Resources.Same_Port_as_0_has_been_used_in_1,
                                          "TelnetPort", "ServerPort"), checkedValues);
            }

            // Telnetポート変換チェック
            if (!int.TryParse(checkValues.TelnetPort, out int port))
            {
                ApplyFailed(string.Format(LangResources.Resources._0_Is_Invalid, LangResources.Resources.Port), checkedValues);
            }
            checkedValues.Port     = port;
            checkedValues.Password = checkValues.Password;
            return(checkedValues);
        }
Example #13
0
        /// <summary>
        /// <inheritdoc/>
        /// </summary>
        public virtual object WrapFailedResult(object originalData, Exception exception, DataWrapperContext wrapperContext)
        {
            var httpContext = wrapperContext.HttpContext;
            var options     = wrapperContext.WrapperOptions;

            CheckValue.NotNull(httpContext, nameof(HttpContext));
            CheckValue.NotNull(options, nameof(DataWrapperOptions));

            if (exception is ISoftlyMiCakeException)
            {
                //Given Ok Code for this exception.
                httpContext.Response.StatusCode = StatusCodes.Status200OK;
                //Given this exception to context.
                wrapperContext.SoftlyException = exception as SoftlyMiCakeException;

                return(WrapSuccesfullysResult(originalData ?? exception.Message, wrapperContext, true));
            }

            var      micakeException = exception as MiCakeException;
            ApiError result          = new ApiError(exception.Message,
                                                    originalData,
                                                    micakeException?.Code,
                                                    options.IsDebug ? exception.StackTrace : null);

            return(result);
        }
Example #14
0
        public static ICheckedValue GetConfigInfo(string configFilePath)
        {
            ConfigLoader configLoader = new ConfigLoader(configFilePath);
            var          portConfig   = configLoader.GetValue("TelnetPort");
            string       strPort      = portConfig == null ? string.Empty : portConfig.Value;
            var          cpPortConfig = configLoader.GetValue("ControlPanelPort");
            string       cpPort       = cpPortConfig == null ? string.Empty : cpPortConfig.Value;
            var          svPortConfig = configLoader.GetValue("ServerPort");
            string       svPort       = svPortConfig == null ? string.Empty : svPortConfig.Value;

            var    passConfig          = configLoader.GetValue("TelnetPassword");
            string password            = passConfig == null ? "CHANGEME" : passConfig.Value;
            string telnetEnabledString = configLoader.GetValue("TelnetEnabled").Value;

            var checkValues = new CheckValue()
            {
                TelnetPort       = strPort,
                ControlPanelPort = cpPort,
                ServerPort       = svPort,
                TelnetEnabled    = telnetEnabledString,
                Password         = password
            };
            ICheckedValue checkedValues = CheckRightfulness(checkValues);

            return(checkedValues);
        }
Example #15
0
        public MiCakeHandlerDescriptor(IMiCakeHandler handler, bool isFromFactory = false)
        {
            CheckValue.NotNull(handler, nameof(handler));

            Handler       = handler;
            IsFromFactory = IsFromFactory;
        }
Example #16
0
        /// <summary>
        /// Converts given string to a byte array using the given <paramref name="encoding"/>
        /// </summary>
        public static byte[] GetBytes(this string str, Encoding encoding)
        {
            CheckValue.NotNull(str, nameof(str));
            CheckValue.NotNull(encoding, nameof(encoding));

            return(encoding.GetBytes(str));
        }
Example #17
0
        public bool TryAddDbExecutor(IDbExecutor dbExecutor)
        {
            CheckValue.NotNull(dbExecutor, nameof(dbExecutor));

            //added executor.Guarantee that it will eventually be released
            AddedExecutors.AddIfNotContains(dbExecutor);

            if (!EnsureToOpenTransaction())
            {
                return(true);
            }

            if (dbExecutor.HasTransaction)
            {
                return(true);
            }

            bool result         = false;
            var  transactionObj = OpenTransactionAndGiveExecutor(_transactions, dbExecutor);

            if (transactionObj != null)
            {
                //reused or new?
                if (!CreatedTransactions.Any(s => s.ID == transactionObj.ID))
                {
                    CreatedTransactions.Add(transactionObj);
                }

                result = true;
            }

            return(result);
        }
Example #18
0
        public InternalStoreEntityBuilder(StoreEntityType storeEntity)
        {
            CheckValue.NotNull(storeEntity, nameof(storeEntity));

            Metadata = storeEntity;
            _clrType = storeEntity.ClrType;
        }
Example #19
0
        /// <summary>
        /// 设置token信息
        /// </summary>
        public void SetToken(string tokenInfo, DateTime tokenExpire)
        {
            CheckValue.NotNullOrWhiteSpace(tokenInfo, nameof(tokenInfo));

            TokenInfo       = tokenInfo;
            TokenExpireTime = tokenExpire;
        }
Example #20
0
 private bool _Validation()
 {
     if (!CheckValue.Check(EditableContractor.LegalPerson.Name))
     {
         MessageBox.Show("Поле 'наименование' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.FirstName))
     {
         MessageBox.Show("Поле 'Имя' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.LastName))
     {
         MessageBox.Show("Поле 'Фамилия' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.MiddleName))
     {
         MessageBox.Show("Поле 'Отчество' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.FirstNameGenitive))
     {
         MessageBox.Show("Поле 'Имя[Р]' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.LastNameGenitive))
     {
         MessageBox.Show("Поле 'Фамилия[Р]' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.MiddleNameGenitive))
     {
         MessageBox.Show("Поле 'Отчество[Р]' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.DateBirth))
     {
         MessageBox.Show("Поле 'дата рождения' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.Region?.Name))
     {
         MessageBox.Show("Поле 'регион' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.City?.Name))
     {
         MessageBox.Show("Поле 'город' не заполнено!");
         return(false);
     }
     if (!CheckValue.Check(EditableContractor.LegalPerson.Inn))
     {
         MessageBox.Show("Поле 'инн' не заполнено!");
         return(false);
     }
     return(true);
 }
Example #21
0
        public UserRole(Guid userId, string roleName)
        {
            CheckValue.NotNull(userId, nameof(userId));
            CheckValue.NotNullOrWhiteSpace(roleName, nameof(roleName));

            UserId   = userId;
            RoleName = roleName;
        }
        public Task <TransportMessage> SerializeAsync(Message message, CancellationToken cancellationToken = default)
        {
            CheckValue.NotNull(message, nameof(message));

            var jsonBody = JsonSerializer.Serialize(message.Body);

            return(Task.FromResult(new TransportMessage(message.Headers, Encoding.UTF8.GetBytes(jsonBody))));
        }
        public Task <Message> DeserializeAsync(TransportMessage transportMessage, CancellationToken cancellationToken = default)
        {
            CheckValue.NotNull(transportMessage, nameof(transportMessage));

            var bodyObject = JsonSerializer.Deserialize <object>(Encoding.UTF8.GetString(transportMessage.Body));

            return(Task.FromResult(new Message(transportMessage.Headers, bodyObject)));
        }
Example #24
0
        public Task <List <FeedBack> > GetUserTodayFeedbacks(string userKey, CancellationToken cancellationToken = default)
        {
            CheckValue.NotNullOrWhiteSpace(userKey, nameof(userKey));
            var nowDate     = DateTime.Now;
            var currentDate = new DateTime(nowDate.Year, nowDate.Month, nowDate.Day);

            return(Task.FromResult(DbSet.Where(s => s.UserKey.Equals(userKey) && (s.CreationTime <= currentDate.AddDays(1) && s.CreationTime >= currentDate)).ToList()));
        }
Example #25
0
        public StepFlyHistory(string userKey, int stepNum)
        {
            CheckValue.NotNullOrWhiteSpace(userKey, nameof(userKey));

            UserKeyInfo = userKey;
            StepNum     = stepNum;
            Source      = (int)StepFlyProviderType.XiaoMi;
        }
Example #26
0
        public DefaultDomainObjectModelProvider(
            IMiCakeModuleContext moduleContext)
        {
            CheckValue.NotNull(moduleContext, nameof(moduleContext));

            _exceptedModules = moduleContext.MiCakeModules.Where(s => !s.Instance.IsFrameworkLevel)
                               .ToMiCakeModuleCollection();
        }
Example #27
0
        public EFCoreTransactionObject(IDbContextTransaction dbContextTransaction)
        {
            CheckValue.NotNull(dbContextTransaction, nameof(dbContextTransaction));

            ID = Guid.NewGuid();
            TransactionType = dbContextTransaction.GetType();

            _efCoreTransaction = dbContextTransaction;
        }
Example #28
0
        /// <summary>
        /// <inheritdoc/>
        /// </summary>
        public void AddIgnoredMember(string propertyName)
        {
            CheckValue.NotNullOrEmpty(propertyName, nameof(propertyName));

            if (_ignoredMembers.Contains(propertyName))
                return;

            _ignoredMembers.Add(propertyName);
        }
Example #29
0
        public DelegateBrowserForm()
        {
            wb = new WebBrowser();

            CheckDelegate  = new CheckValue(this.CheckValueMethod);
            SetDelegate    = new SetValue(this.SetValueMethod);
            SubmitDelegate = new SubmitForm(this.SubmitFormMethod);
            ScriptDelegate = new RunScript(this.RunScriptMethod);
            UrlDelegate    = new GetUrl(this.GetUrlMethod);
        }
Example #30
0
        /// <summary>
        /// This is an internal API  not subject to the same compatibility standards as public APIs.
        /// It may be changed or removed without notice in any release.
        ///
        /// Add <see cref="IStoreModelProvider"/> to this configer.
        /// </summary>
        public virtual StoreConfig AddModelProvider(IStoreModelProvider storeModelProvider)
        {
            CheckValue.NotNull(storeModelProvider, nameof(storeModelProvider));

            var key = storeModelProvider.GetType().FullName;

            _modelProviders.TryAdd(key, storeModelProvider);

            return(this);
        }
        public DelegateBrowserForm()
        {
            wb = new WebBrowser();

            CheckDelegate = new CheckValue(this.CheckValueMethod);
            SetDelegate = new SetValue(this.SetValueMethod);
            SubmitDelegate = new SubmitForm(this.SubmitFormMethod);
            ScriptDelegate = new RunScript(this.RunScriptMethod);
            UrlDelegate = new GetUrl(this.GetUrlMethod);
        }
        public Achievement(Interfaces.IDataEntry data, CheckValue cval = CheckValue.ValueEqual, object val2Check = null)
        {
            if (val2Check != null && !(val2Check is string ^ val2Check is int))
                throw new Exception("Invalid Data type");

            if (data is Switch)
            {
                switch (cval)
                {
                    case CheckValue.ValueEqual:
                        _checkValue = CheckValue.ValueON;
                        break;
                    case CheckValue.ValueGreater:
                    case CheckValue.ValueGreaterEqual:
                    case CheckValue.ValueLess:
                    case CheckValue.ValueLessEqual:
                        throw new Exception("Invalid Check Type - Numeral Booleans cannot be used on Switches");
                    default :
                        _checkValue = cval;
                        break;
                }
            }
            if (data is Variable)
            {
                switch (cval)
                {
                    case CheckValue.ValueOFF:
                    case CheckValue.ValueON:
                        throw new Exception("Invalid Check Type - Switch Checks cannot be used on Variables");
                    case CheckValue.ValueGreater:
                    case CheckValue.ValueGreaterEqual:
                    case CheckValue.ValueLess:
                    case CheckValue.ValueLessEqual:
                        if (val2Check is string)
                            throw new Exception("Invalid Check Value - Cannot test Numeral Booleans on String Variables");
                        break;
                    default:
                        _checkValue = cval;
                        break;
                }
            }

            _value = val2Check;
            _unlocked = false;
            _data = data;
            data.OnValueChange += ValueCheck;
        }