public void if_gived_serviceflags_was_singleinstance_and_multiinstance_returns_singleinstance_only()
        {
            ServiceFlags flags = ServiceFlags.CreateNew();

            flags.AddFlag(ServiceFlagConstants.MultiInstance, null);
            flags.AddFlag(ServiceFlagConstants.SingleInstance, null);

            ServiceFlags result = exec(flags);

            Assert.IsTrue(result.HasFlag(ServiceFlagConstants.SingleInstance));
            Assert.IsFalse(result.HasFlag(ServiceFlagConstants.MultiInstance));
        }
Beispiel #2
0
        public void ResolveIssues(ServiceFlags flags)
        {
            // add resolving probles with multiple creation methods like ctors and factors later TODO

            if (flags.HasFlag(ServiceFlagConstants.MultiInstance) && flags.HasFlag(ServiceFlagConstants.SingleInstance))
            {
                flags.RemoveFlag(ServiceFlagConstants.MultiInstance);
            }

            if (!flags.HasFlag(ServiceFlagConstants.MultiInstance) && !flags.HasFlag(ServiceFlagConstants.SingleInstance))
            {
                flags.AddFlag(ServiceFlagConstants.SingleInstance, null);
            }
        }
        public void if_gived_serviceflags_wasnt_had_singleinstance_or_multiinstance_returns_singleinstance()
        {
            ServiceFlags flags = ServiceFlags.CreateNew();

            Assert.IsFalse(flags.HasFlag(ServiceFlagConstants.SingleInstance));

            ServiceFlags result = exec(flags);

            Assert.IsTrue(result.HasFlag(ServiceFlagConstants.SingleInstance));
        }
Beispiel #4
0
    public List <Service> GetServices()
    {
        var services = new List <Service>
        {
            Service.Persuasion
        };

        if (buySellFlags != ServiceFlags.None)
        {
            // Bitmask to get rid of all non-selling flags
            if (((int)buySellFlags & 0x37ff) != 0)
            {
                services.Add(Service.Barter);
            }

            if (buySellFlags.HasFlag(ServiceFlags.Spells))
            {
                services.Add(Service.Spells);
            }

            if (buySellFlags.HasFlag(ServiceFlags.Training))
            {
                services.Add(Service.Training);
            }

            if (buySellFlags.HasFlag(ServiceFlags.Spellmaking))
            {
                services.Add(Service.Spellmaking);
            }

            if (buySellFlags.HasFlag(ServiceFlags.Enchanting))
            {
                services.Add(Service.Enchanting);
            }

            if (buySellFlags.HasFlag(ServiceFlags.Repair))
            {
                services.Add(Service.Repair);
            }
        }

        return(services);
    }
        /// <summary>
        /// The update network state.
        /// </summary>
        /// <param name="info">
        /// The info.
        /// </param>
        private void UpdateNetworkState(NetworkInfo info)
        {
            NetworkState tempState = this.networkState;

            this.networkState = NetworkState.Disconnected;

            if (info != null && info.IsConnected)
            {
                this.networkState = NetworkState.Connected;

                if (info.IsRoaming)
                {
                    this.networkState |= NetworkState.Roaming;
                }

                if (info.IsFailover)
                {
                    this.networkState |= NetworkState.IsFailOver;
                }

                this.networkState |= this.GetNetworkState(info);
            }

            this.stateChanged = this.stateChanged || this.networkState != tempState;

            if (this.stateChanged)
            {
                Log.Debug(Tag, "LVLDL Network state changed: ");
                Log.Debug(Tag, "LVLDL Starting State: {0}", tempState);
                Log.Debug(Tag, "LVLDL Ending State: {0}", this.networkState);

                if (this.IsServiceRunning)
                {
                    if (this.networkState.HasFlag(NetworkState.Roaming))
                    {
                        this.Status  = ExpansionDownloadStatus.WaitingForNetwork;
                        this.Control = ControlAction.Paused;
                    }
                    else if (this.networkState.HasFlag(NetworkState.IsCellular))
                    {
                        ServiceFlags flags = DownloadsDatabase.Flags;
                        if (!flags.HasFlag(ServiceFlags.FlagsDownloadOverCellular))
                        {
                            this.Status  = ExpansionDownloadStatus.QueuedForWifi;
                            this.Control = ControlAction.Paused;
                        }
                    }
                }
            }
        }