Esempio n. 1
0
        public SecurableClassDefinition CreateAndCommitSecurableClassDefinitionWithStates(ClientTransaction transaction)
        {
            CreateEmptyDomain();
            using (transaction.EnterNonDiscardingScope())
            {
                SecurableClassDefinition classDefinition = CreateOrderSecurableClassDefinition();

                classDefinition.AddStateProperty(CreateFileStateProperty(ClientTransactionScope.CurrentTransaction));
                classDefinition.AddStateProperty(CreateConfidentialityProperty());

                ClientTransactionScope.CurrentTransaction.Commit();

                return(classDefinition);
            }
        }
Esempio n. 2
0
        public SecurableClassDefinition CreateAndCommitSecurableClassDefinitionWithAccessControlLists(int accessControlLists, ClientTransaction transaction)
        {
            CreateEmptyDomain();

            using (transaction.EnterNonDiscardingScope())
            {
                SecurableClassDefinition   classDefinition            = CreateOrderSecurableClassDefinition();
                StatelessAccessControlList statelessAccessControlList = StatelessAccessControlList.NewObject();
                classDefinition.StatelessAccessControlList = statelessAccessControlList;

                var stateProperty = StatePropertyDefinition.NewObject(Guid.NewGuid(), "Property");
                classDefinition.AddStateProperty(stateProperty);

                for (int i = 1; i < accessControlLists; i++)
                {
                    StatefulAccessControlList statefulAccessControlList = StatefulAccessControlList.NewObject();
                    classDefinition.StatefulAccessControlLists.Add(statefulAccessControlList);
                    statefulAccessControlList.CreateAccessControlEntry();
                    CreateStateCombination(statefulAccessControlList, stateProperty, StateDefinition.NewObject(string.Format("Value {0}", i), i));
                }

                ClientTransactionScope.CurrentTransaction.Commit();

                return(classDefinition);
            }
        }
Esempio n. 3
0
        public StatePropertyDefinition CreatePaymentStateProperty(SecurableClassDefinition classDefinition)
        {
            using (_transaction.EnterNonDiscardingScope())
            {
                StatePropertyDefinition paymentStateProperty = CreateStateProperty("Payment");
                paymentStateProperty.AddState(CreateState(EnumWrapper.Get(PaymentState.None).Name, 0));
                paymentStateProperty.AddState(CreateState(EnumWrapper.Get(PaymentState.Paid).Name, 1));
                classDefinition.AddStateProperty(paymentStateProperty);

                return(paymentStateProperty);
            }
        }
Esempio n. 4
0
        public StatePropertyDefinition CreateDeliveryStateProperty(SecurableClassDefinition classDefinition)
        {
            using (_transaction.EnterNonDiscardingScope())
            {
                StatePropertyDefinition deliveryStateProperty = CreateStateProperty("Delivery");
                deliveryStateProperty.AddState(CreateState(EnumWrapper.Get(Delivery.Dhl).Name, 0));
                deliveryStateProperty.AddState(CreateState(EnumWrapper.Get(Delivery.Post).Name, 1));
                classDefinition.AddStateProperty(deliveryStateProperty);

                return(deliveryStateProperty);
            }
        }
Esempio n. 5
0
        public StatePropertyDefinition CreateOrderStateProperty(SecurableClassDefinition classDefinition)
        {
            using (_transaction.EnterNonDiscardingScope())
            {
                StatePropertyDefinition orderStateProperty = CreateStateProperty("State");
                orderStateProperty.AddState(CreateState(EnumWrapper.Get(OrderState.Received).Name, 0));
                orderStateProperty.AddState(CreateState(EnumWrapper.Get(OrderState.Delivered).Name, 1));
                classDefinition.AddStateProperty(orderStateProperty);

                return(orderStateProperty);
            }
        }