Пример #1
0
 public BusinessApp()
 {
     //DbConversation = new DbConversation(new HibernateSessionFactory(new SqlServerPersistenceConfiguration(), ));
     TableProvider     = new TableProvider();
     WorkbenchProvider = new WorkbenchProvider {
         DbConversation = DbConversation, TableProvider = TableProvider,
     };
     TerminalProvider = new TerminalProvider {
         DbConversation = DbConversation, WorkbenchProvider = WorkbenchProvider,
     };
 }
Пример #2
0
        bool CheckTerminal()
        {
            if (PmsTerminal != null)
            {
                return(true);
            }
            var terminalId = new ManualInput("Terminal", 3).GetNumber();

            if (terminalId > 0)
            {
                PmsTerminal = TerminalProvider.ClaimTerminal(terminalId);
            }
            return(PmsTerminal != null);
        }
Пример #3
0
        internal void MakeResources()
        {
            ValidateEntityResourceProviders();

            foreach (var provider in EntityResourceProviders.Values)
            {
                provider.TypeCache          = TypeCache;
                provider.ResourceCollection = ResourceCollection;
                provider.ResourceValidator  = ResourceValidator;
            }

            ValidateAndBuildTypeLists
            (
                out var regularTypes,
                out var wrapperTypes,
                out var terminalTypes,
                out var binaryTypes,
                out _
            );

            foreach (var provider in EntityResourceProviders.Values)
            {
                var claim = regularTypes.Where(provider.Include).ToList();
                regularTypes = regularTypes.Except(claim).ToList();
                provider.MakeClaimRegular(claim);
            }

            foreach (var provider in EntityResourceProviders.Values)
            {
                var claim = wrapperTypes.Where(provider.Include).ToList();
                wrapperTypes = wrapperTypes.Except(claim).ToList();
                provider.MakeClaimWrapped(claim);
            }

            foreach (var provider in EntityResourceProviders.Values)
            {
                provider.ReceiveClaimed(ResourceCollection.OfType <IEntityResource>()
                                        .Where(r => r.Provider == provider.Id)
                                        .ToList());
                if (provider is IProceduralEntityResourceProvider)
                {
                    provider.MakeClaimProcedural();
                }
            }

            TerminalProvider.RegisterTerminalTypes(terminalTypes);
            BinaryProvider.RegisterBinaryTypes(binaryTypes);
            ValidateInnerResources();
        }
Пример #4
0
        internal static void MakeResources(IEntityResourceProvider[] externalProviders)
        {
            ValidateEntityResourceProviders(externalProviders);

            ValidateAndBuildTypeLists
            (
                out var regularTypes,
                out var wrapperTypes,
                out var terminalTypes,
                out var binaryTypes,
                out var eventTypes
            );

            foreach (var provider in EntityResourceProviders.Values)
            {
                var claim = regularTypes.Where(provider.Include).ToList();
                regularTypes = regularTypes.Except(claim).ToList();
                provider.MakeClaimRegular(claim);
            }

            foreach (var provider in EntityResourceProviders.Values)
            {
                var claim = wrapperTypes.Where(provider.Include).ToList();
                wrapperTypes = wrapperTypes.Except(claim).ToList();
                provider.MakeClaimWrapped(claim);
            }

            foreach (var provider in EntityResourceProviders.Values)
            {
                provider.ReceiveClaimed(Resource.ClaimedBy(provider));
                if (provider is IProceduralEntityResourceProvider)
                {
                    provider.MakeClaimProcedural();
                }
            }

            TerminalProvider.RegisterTerminalTypes(terminalTypes);
            BinaryProvider.RegisterBinaryTypes(binaryTypes);
            EventProvider.RegisterEventTypes(eventTypes);
            ValidateInnerResources();
        }