public SaveCustomer(ICustomerService customerService, IMapperProvider mapperProvider,
                     IEncryptionProvider encryptionProvider)
 {
     _customerService    = customerService;
     _mapperProvider     = mapperProvider;
     _encryptionProvider = encryptionProvider;
 }
Ejemplo n.º 2
0
        public void TestMapper()
        {
            // SourceA --> TargetA
            // A==>A B==>D C==>E  A==>X1 C==>X2
            IServiceCollection sc = new ServiceCollection()
                                    .AddLightweightMapper();

            IServiceProvider sp       = sc.BuildServiceProvider();
            IMapperProvider  provider = sp.GetRequiredService <IMapperProvider>();

            SourceA a = new SourceA()
            {
                A  = "A",
                B  = "B",
                C  = "C",
                SA = new StructA()
                {
                    X = 1,
                    Y = 2
                }
            };
            var ta = provider.Convert <SourceA, TargetA>(a);

            Assert.Equal("A", ta.A);
            Assert.Equal("B", ta.D);
            Assert.Equal("C", ta.E);
            Assert.Equal("A", ta.X1);
            Assert.Equal("C", ta.X2);
            Assert.False(Object.ReferenceEquals(ta.TSA, a.SA));
            Assert.Equal(1, ta.TSA.X);
            Assert.Equal(2, ta.TSA.Y);
        }
Ejemplo n.º 3
0
        public Ledger(IDeltaExecutor deltaExecutor,
                      IStateProvider stateProvider,
                      IStorageProvider storageProvider,
                      ISnapshotableDb stateDb,
                      ISnapshotableDb codeDb,
                      IAccountRepository accounts,
                      IDeltaHashProvider deltaHashProvider,
                      ILedgerSynchroniser synchroniser,
                      IMempool <PublicEntryDao> mempool,
                      IMapperProvider mapperProvider,
                      ILogger logger)
        {
            Accounts         = accounts;
            _deltaExecutor   = deltaExecutor;
            _stateProvider   = stateProvider;
            _storageProvider = storageProvider;
            _stateDb         = stateDb;
            _codeDb          = codeDb;
            _synchroniser    = synchroniser;
            _mempool         = mempool;
            _mapperProvider  = mapperProvider;
            _logger          = logger;

            _deltaUpdatesSubscription = deltaHashProvider.DeltaHashUpdates.Subscribe(Update);
            LatestKnownDelta          = _synchroniser.DeltaCache.GenesisHash;
        }
Ejemplo n.º 4
0
        public Web3EthApi(IStateReader stateReader,
                          IDeltaResolver deltaResolver,
                          IDeltaCache deltaCache,
                          IDeltaExecutor executor,
                          IStorageProvider storageProvider,
                          IStateProvider stateProvider,
                          ITransactionRepository receipts,
                          ITransactionReceivedEvent transactionReceived,
                          IPeerRepository peerRepository,
                          IMempool <PublicEntryDao> mempoolRepository,
                          IDfsService dfsService,
                          IHashProvider hashProvider,
                          SyncState syncState,
                          IMapperProvider mapperProvider,
                          IPeerSettings peerSettings)
        {
            _receipts            = receipts;
            _transactionReceived = transactionReceived ?? throw new ArgumentNullException(nameof(transactionReceived));
            HashProvider         = hashProvider;
            _peerId            = peerSettings.PeerId;
            _mempoolRepository = mempoolRepository;
            PeerRepository     = peerRepository;
            _mapperProvider    = mapperProvider;

            StateReader     = stateReader ?? throw new ArgumentNullException(nameof(stateReader));
            DeltaResolver   = deltaResolver ?? throw new ArgumentNullException(nameof(deltaResolver));
            DeltaCache      = deltaCache ?? throw new ArgumentNullException(nameof(deltaCache));
            Executor        = executor ?? throw new ArgumentNullException(nameof(executor));
            StorageProvider = storageProvider ?? throw new ArgumentNullException(nameof(storageProvider));
            StateProvider   = stateProvider ?? throw new ArgumentNullException(nameof(stateProvider));
            DfsService      = dfsService;
            SyncState       = syncState;
        }
        public void Test5()
        {
            IServiceCollection sc = new ServiceCollection()
                                    .AddLightweightMapper();

            IServiceProvider sp       = sc.BuildServiceProvider();
            IMapperProvider  provider = sp.GetRequiredService <IMapperProvider>();
            var mapper = provider.GetMapper <S4, T4>();

            var s4 = new S4();
            var t4 = mapper.Convert(s4);

            Assert.Null(t4.T1);

            s4 = new S4()
            {
                S1 = new S1()
                {
                    A = 10
                }
            };
            t4 = mapper.Convert(s4);
            Assert.NotNull(t4.T1);
            Assert.Equal(10, t4.T1.A);
        }
Ejemplo n.º 6
0
 public GetAttributes(IMapperProvider mapperProvider, IEncryptionProvider encryptionProvider,
                      ICacheProvider cacheProvider, IAttributeService attributeService)
     : base(mapperProvider, encryptionProvider)
 {
     _cacheProvider    = cacheProvider;
     _attributeService = attributeService;
 }
        public void Test0_1()
        {
            IServiceCollection sc = new ServiceCollection()
                                    .AddLightweightMapper();

            IServiceProvider sp       = sc.BuildServiceProvider();
            IMapperProvider  provider = sp.GetRequiredService <IMapperProvider>();

            Assert.Equal(10, provider.Convert <int, int>(10));
            Assert.Null(provider.Convert <int?, int?>(null));
            Assert.Equal(10, provider.Convert <int?, int>(10));
            Assert.Null(provider.Convert <int, byte?>(300));
            Assert.Equal(0, provider.Convert <int, byte>(300));

            Assert.Equal("A", provider.Convert <string, string>("A"));
            Assert.Equal(new DateTime(2010, 1, 1), provider.Convert <DateTime, DateTime>(new DateTime(2010, 1, 1)));
            Assert.Equal(new DateTime(), provider.Convert <DateTime?, DateTime>(null));
            Assert.Null(provider.Convert <DateTime?, DateTime?>(null));

            var list = provider.ConvertList <string, string>(new List <string>()
            {
                "A", "B"
            });

            Assert.Equal("B", list[1]);

            var dic = provider.Convert <Dictionary <string, int>, Dictionary <string, byte?> >(new Dictionary <string, int>()
            {
                { "A", 300 },
                { "B", 10 }
            });

            Assert.Null(dic["A"]);
            Assert.Equal(10, dic["B"].Value);
        }
Ejemplo n.º 8
0
        public LedgerTests()
        {
            _testScheduler  = new TestScheduler();
            _fakeRepository = Substitute.For <IAccountRepository>();
            _hashProvider   = new HashProvider(HashingAlgorithm.GetAlgorithmMetadata("keccak-256"));
            _mapperProvider = new TestMapperProvider();

            _logger            = Substitute.For <ILogger>();
            _mempool           = Substitute.For <IMempool <PublicEntryDao> >();
            _deltaHashProvider = Substitute.For <IDeltaHashProvider>();
            _receipts          = Substitute.For <ITransactionRepository>();
            _synchroniser      = Substitute.For <ISynchroniser>();
            _genesisHash       = _hashProvider.ComputeUtf8MultiHash("genesis").ToCid();
            _synchroniser.DeltaCache.GenesisHash.Returns(_genesisHash);
            _executor        = Substitute.For <IDeltaExecutor>();
            _stateProvider   = Substitute.For <IStateProvider>();
            _storageProvider = Substitute.For <IStorageProvider>();
            _cryptoContext   = new FfiWrapper();
            _signingContext  = new SigningContext
            {
                NetworkType   = NetworkType.Devnet,
                SignatureType = SignatureType.TransactionPublic
            };

            _deltaIndexService = new DeltaIndexService(new InMemoryRepository <DeltaIndexDao, string>());
        }
Ejemplo n.º 9
0
        public Synchroniser(SyncState syncState,
                            IPeerSyncManager peerSyncManager,
                            IDeltaCache deltaCache,
                            IDeltaHeightWatcher deltaHeightWatcher,
                            IDeltaHashProvider deltaHashProvider,
                            IDeltaDfsReader deltaDfsReader,
                            IDeltaIndexService deltaIndexService,
                            IMapperProvider mapperProvider,
                            IUserOutput userOutput,
                            ILogger logger,
                            int rangeSize        = 20, //cannot go over 20 until udp network fragmentation is fixed
                            IScheduler scheduler = null)
        {
            State               = syncState;
            _peerSyncManager    = peerSyncManager;
            _deltaHeightWatcher = deltaHeightWatcher;
            DeltaCache          = deltaCache;
            _rangeSize          = rangeSize;
            _deltaIndexService  = deltaIndexService;
            _mapperProvider     = mapperProvider;
            _userOutput         = userOutput;

            _deltaHashProvider = deltaHashProvider;

            _logger = logger;

            _syncCompletedReplaySubject = new ReplaySubject <ulong>(1, scheduler ?? Scheduler.Default);
            SyncCompleted = _syncCompletedReplaySubject.AsObservable();
        }
        public void Test8()
        {
            IServiceCollection sc = new ServiceCollection()
                                    .AddLightweightMapper(options =>
            {
                options.AddConvert <S1, T1_2>((m, s, t) =>
                {
                    t.B = t.A + 1;
                });
                // 基类转换 ,在父类的转换会作用于子类
                options.AddConvert <S1, T1>((m, s, t) =>
                {
                    t.A = t.A + 2;
                });
            });

            IServiceProvider sp       = sc.BuildServiceProvider();
            IMapperProvider  provider = sp.GetRequiredService <IMapperProvider>();

            var m  = provider.GetMapper <S1, T1_2>();
            var t1 = m.Convert(new S1()
            {
                A = 10
            });

            Assert.Equal(11, t1.B);
            // 注意先后关系
            Assert.Equal(12, t1.A);
        }
        public void Test3()
        {
            IServiceCollection sc = new ServiceCollection()
                                    .AddLightweightMapper();

            IServiceProvider sp       = sc.BuildServiceProvider();
            IMapperProvider  provider = sp.GetRequiredService <IMapperProvider>();
            var mapper = provider.GetMapper <S2, T1>();

            var s2 = new S2()
            {
                A = null
            };
            var t2 = mapper.Convert(s2);

            Assert.IsType <T1>(t2);
            Assert.Equal(0, t2.A);

            s2 = new S2()
            {
                A = 10
            };
            t2 = mapper.Convert(s2);
            Assert.IsType <T1>(t2);
            Assert.Equal(10, t2.A);

            var mapper2 = provider.GetMapper <T1, S2>();
            var t1      = new T1()
            {
                A = 10
            };
            var s3 = mapper2.Convert(t1);

            Assert.Equal(10, s3.A);
        }
        public void Test4()
        {
            IServiceCollection sc = new ServiceCollection()
                                    .AddLightweightMapper();

            IServiceProvider sp       = sc.BuildServiceProvider();
            IMapperProvider  provider = sp.GetRequiredService <IMapperProvider>();
            var mapper = provider.GetMapper <S3, T3>();

            var s3 = new S3()
            {
                A = 1,
                B = 1,
                C = 1
            };
            var t3 = mapper.Convert(s3);

            Assert.IsType <T3>(t3);
            Assert.Equal(1, t3.A);
            Assert.Equal(1, t3.B.Value);
            Assert.Equal(1, t3.C.Value);

            s3 = new S3()
            {
                A = null,
                B = 300,
                C = null
            };
            t3 = mapper.Convert(s3);
            Assert.Equal(0, t3.A);
            Assert.Null(t3.B);
            Assert.Null(t3.C);
        }
Ejemplo n.º 13
0
 public DefaultMapper(
     IMapperProvider provider,
     IOptions <MapperOptions> options)
 {
     _provider = provider;
     _options  = options.Value;
 }
Ejemplo n.º 14
0
 public GetDocumentation(IMapperProvider mapperProvider,
                         IEncryptionProvider encryptionProvider,
                         IApiDescriptionGroupCollectionProvider apiExplorer)
     : base(mapperProvider, encryptionProvider)
 {
     _apiExplorer = apiExplorer;
 }
Ejemplo n.º 15
0
 public UsuarioRepository(IMapperProvider mapperProvider, IProtector protector, ApplicationDbContext context)
 {
     this.mapperProvider = mapperProvider;
     this.protector      = protector;
     this.context        = context;
     this.mapper         = this.mapperProvider.GetMapper();
 }
 public ArticlesCategoryViewModelMapper(IUmbracoContextProvider umbracoConextProvider, IContentMapper <Article> contentMapper,
                                        IMapperProvider mapperProvider, IArticlesSerivce articlesService) : base(umbracoConextProvider)
 {
     _contentMapper   = contentMapper;
     _mapperProvider  = mapperProvider;
     _articlesService = articlesService;
 }
Ejemplo n.º 17
0
 public LedgerController(IDeltaHashProvider deltaHashProvider, IDfsService dfsService, IMapperProvider mapperProvider, ILogger logger)
 {
     _deltaHashProvider = deltaHashProvider;
     _dfsService        = dfsService;
     _mapperProvider    = mapperProvider;
     _logger            = logger;
 }
Ejemplo n.º 18
0
 public UserService(UserRepository userRepository, IMapperProvider mapperProvider, IHashProvider hashProvider, UserRoleRepository userRoleRepository)
 {
     _userRepository     = userRepository;
     _mapperProvider     = mapperProvider;
     _hashProvider       = hashProvider;
     _userRoleRepository = userRoleRepository;
 }
        public void Test5()
        {
            IServiceCollection sc = new ServiceCollection()
                                    .AddLightweightMapper();

            IServiceProvider sp       = sc.BuildServiceProvider();
            IMapperProvider  provider = sp.GetRequiredService <IMapperProvider>();

            var a1 = provider.DefineCopyTo <S1, S2>(m => m.A);
            S2  t1 = new S2();
            S1  s1 = new S1()
            {
                A = "10"
            };

            a1(s1, t1);
            Assert.Null(t1.A);

            a1 = provider.DefineCopyTo <S1, S2>(null);
            a1(s1, t1);
            Assert.Equal("10", t1.A);

            // 去掉CD属性
            var a2 = provider.DefineCopyTo <S5, S6>(m => new S5
            {
                C = m.C,
                D = m.D
            });
            S5 s2 = new S5()
            {
                A = "A", B = 10, C = 2, D = 1, E = new S5()
                {
                    C = 20, D = 10
                }
            };
            S6 t2 = new S6();

            a2(s2, t2);
            Assert.Equal("A", t2.A);
            Assert.Null(t2.B);
            Assert.Equal(0, t2.C);
            Assert.Equal(0, t2.D1);
            Assert.Equal(20, t2.E.C);
            Assert.Equal(10, t2.E.D1);

            a2 = provider.DefineCopyTo <S5, S6>(m => new S5
            {
                E = new S5
                {
                    C = 0,
                    D = null,
                }
            });
            t2.E = new S6();
            a2(s2, t2);
            Assert.Equal(2, t2.C);
            Assert.Equal(0, t2.E.C);
            Assert.Equal(0, t2.E.D1);
        }
        public void Test9()
        {
            IServiceCollection sc = new ServiceCollection()
                                    .AddLightweightMapper();

            IServiceProvider sp       = sc.BuildServiceProvider();
            IMapperProvider  provider = sp.GetRequiredService <IMapperProvider>();

            S5 s5 = new S5()
            {
                S1 = new S1()
                {
                    A = 10
                }
            };

            s5.Self = s5;

            T5 t5 = provider.Convert <S5, T5>(s5);

            Assert.Equal(t5.Self, t5);
            Assert.Equal(10, t5.T1.A);

            // List
            List <S5> list = new List <S5>();

            list.Add(s5);
            list.Add(s5);
            list.Add(s5);

            List <T5> t5List = provider.ConvertList <S5, T5>(list);

            Assert.NotNull(t5List);
            Assert.Equal(3, t5List.Count);
            Assert.Equal(t5List[0], t5List[1]);
            Assert.Equal(t5List[0], t5List[2]);

            Dictionary <S5, S5> dic = new Dictionary <S5, S5>()
            {
                { s5, s5 },
                { new S5()
                  {
                      S1 = new S1 {
                          A = 11
                      }
                  }, s5 }
            };

            var targetDic = provider.Convert <Dictionary <S5, S5>, Dictionary <T5, T5> >(dic);

            Assert.NotNull(targetDic);
            Assert.Equal(2, targetDic.Count);
            var item1 = dic.First();
            var item2 = dic.Last();

            Assert.Equal(item1.Value, item2.Value);
            Assert.Equal(item1.Key, item1.Value);
            Assert.Equal(11, item2.Key.S1.A);
        }
        /// <summary>
        /// Returns the option instance with a configured mapper provider for mapping an query result to a valid entity object within the repository.
        /// </summary>
        /// <param name="mapperProvider">The entity mapper provider.</param>
        /// <returns>The same option instance.</returns>
        public RepositoryOptions With([NotNull] IMapperProvider mapperProvider)
        {
            var clone = Clone();

            clone._mapperProvider = Guard.NotNull(mapperProvider, nameof(mapperProvider));

            return(clone);
        }
 public PropertyAssignGenerator(
     ParameterExpression sourcePar,
     ParameterExpression targetPar,
     ParameterExpression crCheckerPar,
     IMapperProvider mapper)
     : this(sourcePar, targetPar, crCheckerPar, sourcePar.Type, targetPar.Type, mapper)
 {
 }
Ejemplo n.º 23
0
 public DeltaTransactionRetriever(IMempool <PublicEntryDao> mempool,
                                  IMapperProvider mapperProvider,
                                  ITransactionComparer transactionComparer)
 {
     _mempool            = mempool;
     _mapperProvider     = mapperProvider;
     TransactionComparer = transactionComparer;
 }
Ejemplo n.º 24
0
 /// <summary>
 /// Assign a new custom implementation
 /// </summary>
 /// <param name="provider">Custom provider implementation. For instance one that uses an IoC container to find the mappings.</param>
 public static void Assign(IMapperProvider provider)
 {
     if (provider == null)
     {
         throw new ArgumentNullException("provider");
     }
     _instance = provider;
 }
Ejemplo n.º 25
0
        public static Action <TSource, TTarget> DefineCopyTo <TSource, TTarget>(this IMapperProvider provider, Expression <Func <TSource, object> > excludeProperties = null)
            where TSource : class
            where TTarget : class
        {
            var mapper = provider.GetMapper <TSource, TTarget>();

            return(mapper.DefineCopyTo(excludeProperties));
        }
Ejemplo n.º 26
0
 public GetCustomerPreferences(IMapperProvider mapperProvider, IEncryptionProvider encryptionProvider,
                               ICustomerService customerService,
                               ICustomerPreferenceService customerPreferenceService)
     : base(mapperProvider, encryptionProvider)
 {
     _customerService           = customerService;
     _customerPreferenceService = customerPreferenceService;
 }
Ejemplo n.º 27
0
 public NewsCategoryViewModelMapper(IUmbracoContextProvider umbracoConextProvider, IContentMapper <News> contentMapper,
                                    IMapperProvider mapperProvider, INewsService newsService)
     : base(umbracoConextProvider)
 {
     _contentMapper  = contentMapper;
     _mapperProvider = mapperProvider;
     _newsService    = newsService;
 }
Ejemplo n.º 28
0
 public GalleryCategoryViewModelMapper(IUmbracoContextProvider umbracoConextProvider, IGalleryService gelleryService,
                                       IMapperProvider mapperProvieder, IContentMapper <Gallery> contentMapper)
     : base(umbracoConextProvider)
 {
     _galleryService  = gelleryService;
     _mapperProvieder = mapperProvieder;
     _contentMapper   = contentMapper;
 }
Ejemplo n.º 29
0
 public SubCategoryGamesViewModelMapper(IUmbracoContextProvider umbracoConextProvider, IBaseCategoriesService <SubCategoryGames> categoryService,
                                        IContentMapper <Game> gameMapper, IMapperProvider mapperProvider, IBaseCategoriesService <CategoriesGames> categoriesService)
     : base(umbracoConextProvider)
 {
     _categoryService   = categoryService;
     _gameMapper        = gameMapper;
     _mapperProvider    = mapperProvider;
     _categoriesService = categoriesService;
 }
Ejemplo n.º 30
0
 public GetMempoolRequestObserver(IPeerSettings peerSettings,
                                  IMempool <PublicEntryDao> mempool,
                                  IMapperProvider mappingProvider,
                                  ILogger logger)
     : base(logger, peerSettings)
 {
     _mempool         = mempool;
     _mappingProvider = mappingProvider;
 }