Пример #1
0
        private XpandUnitOfWork CreateUnitOfWork() {
            var uow = new XpandUnitOfWork(DataLayer);

            if (SelectDataSecurityProvider == null)
                return uow;
            if (!_clientSideSecurity.HasValue || _clientSideSecurity.Value == ClientSideSecurity.UIlevel)
                return uow;
            var currentObjectLayer = new SecuredSessionObjectLayer(_allowICommandChannelDoWithSecurityContext, uow, true, null, new SecurityRuleProvider(XPDictionary, _selectDataSecurityProvider.CreateSelectDataSecurity()), null);
            return new XpandUnitOfWork(currentObjectLayer, uow);
        }
 private XpandUnitOfWork CreateUnitOfWork() {
     var uow = new XpandUnitOfWork(DataLayer);
     var securedObjectLayer = _security as ISelectDataSecurityProvider;
     if (securedObjectLayer != null &&
         (_clientSideSecurity.HasValue && _clientSideSecurity.Value != ClientSideSecurity.UIlevel)){
         var securityRuleProvider = new SecurityRuleProvider(XPDictionary,securedObjectLayer.CreateSelectDataSecurity());
         var currentObjectLayer = new SecuredSessionObjectLayer(_allowICommandChannelDoWithSecurityContext, uow,true, null, securityRuleProvider, null);
         return new XpandUnitOfWork(currentObjectLayer, uow);
     }
     return uow;
 }
Пример #3
0
        private XpandUnitOfWork CreateUnitOfWork()
        {
            var uow = new XpandUnitOfWork(DataLayer);
            var securedObjectLayer = _security as ISelectDataSecurityProvider;

            if (securedObjectLayer != null &&
                (_clientSideSecurity.HasValue && _clientSideSecurity.Value != ClientSideSecurity.UIlevel))
            {
                var securityRuleProvider = new SecurityRuleProvider(XPDictionary, securedObjectLayer.CreateSelectDataSecurity());
                var currentObjectLayer   = new SecuredSessionObjectLayer(_allowICommandChannelDoWithSecurityContext, uow, true, null, securityRuleProvider, null);
                return(new XpandUnitOfWork(currentObjectLayer, uow));
            }
            return(uow);
        }
Пример #4
0
        private XpandUnitOfWork CreateUnitOfWork(IDataStore dataStore, IEnumerable <IDisposable> disposableObjects)
        {
            var disposableObjectsList = new List <IDisposable>();

            if (disposableObjects != null)
            {
                disposableObjectsList.AddRange(disposableObjects);
            }

            var dataLayer = new SimpleDataLayer(XPDictionary, dataStore);

            disposableObjectsList.Add(dataLayer);
            if (SelectDataSecurityProvider == null)
            {
                return(new XpandUnitOfWork(dataLayer, disposableObjectsList.ToArray()));
            }
            var xpandUnitOfWork = new XpandUnitOfWork(dataLayer, disposableObjectsList.ToArray());
            SessionObjectLayer currentObjectLayer = new SecuredSessionObjectLayer(_allowICommandChannelDoWithSecurityContext, xpandUnitOfWork, true, null, new SecurityRuleProvider(XPDictionary, _selectDataSecurityProvider.CreateSelectDataSecurity()), null);

            return(new XpandUnitOfWork(currentObjectLayer, xpandUnitOfWork));
        }
 /// <inheritdoc />
 protected override UnitOfWork CreateUnitOfWork(IDataLayer dataLayer)
 {
     UnitOfWork directBaseUow = new UnitOfWork(dataLayer);
     if (securities == null)
     {
         securities = selectDataSecurityProviders.Select(
             provider => provider.CreateSelectDataSecurity()).ToArray();
     }
     SessionObjectLayer currentObjectLayer = new SecuredSessionObjectLayer(
         allowICommandChannelDoWithSecurityContext, directBaseUow, true, null,
         new ComplexRuleProvider(XPDictionary, securities), null);
     return new UnitOfWork(currentObjectLayer, directBaseUow);
 }