コード例 #1
1
ファイル: TaskActions.cs プロジェクト: GorelH/ravendb
		public TaskActions(RavenFileSystem fileSystem, ILog log)
			: base(fileSystem, log)
		{
			timer = Observable.Interval(TimeSpan.FromMinutes(1));

			InitializeTimer();
		}
コード例 #2
1
		public NLogLogProviderLoggingEnabledTests()
		{
			NLogLogManager.ProviderIsAvailableOverride = true;
			var config = new LoggingConfiguration();

			simpleLayoutTarget = new MemoryTarget
			{
				Layout = "${level:uppercase=true}|${message}|${exception}"
			};
			ndcLayoutTarget = new MemoryTarget
			{
				Layout = "${level:uppercase=true}|${ndc:bottomFrames=10:topFrames=10:separator=;}|${message}|${exception}"
			};
			mdcLayoutTarget = new MemoryTarget
			{
				Layout = "${level:uppercase=true}|${mdc:item=Key}|${message}|${exception}"
			};
			config.AddTarget("simpleLayoutMemory", simpleLayoutTarget);
			config.AddTarget("mdcLayoutTarget", mdcLayoutTarget);
			config.AddTarget("ndcLayoutMemory", ndcLayoutTarget);
			config.LoggingRules.Add(new LoggingRule("*", LogLevel.Trace, simpleLayoutTarget));
			config.LoggingRules.Add(new LoggingRule("*", LogLevel.Trace, mdcLayoutTarget));
			config.LoggingRules.Add(new LoggingRule("*", LogLevel.Trace, ndcLayoutTarget));
			LogManager.Configuration = config;
			nLogLogManager = new NLogLogManager();
			sut = nLogLogManager.GetLogger("Test");
		}
コード例 #3
1
        public SmtpClientSession(ILog log, SmtpClientSessionConfiguration configuration, MessageData messageData)
        {
            _log = log;
            _configuration = configuration;

            _messageData = messageData;
        }
コード例 #4
1
        public ExecuteReplCommand(
            string scriptName,
            string[] scriptArgs,
            IFileSystem fileSystem,
            IScriptPackResolver scriptPackResolver,
            IRepl repl,
            ILogProvider logProvider,
            IConsole console,
            IAssemblyResolver assemblyResolver,
            IFileSystemMigrator fileSystemMigrator,
            IScriptLibraryComposer composer)
        {
            Guard.AgainstNullArgument("fileSystem", fileSystem);
            Guard.AgainstNullArgument("scriptPackResolver", scriptPackResolver);
            Guard.AgainstNullArgument("repl", repl);
            Guard.AgainstNullArgument("logProvider", logProvider);
            Guard.AgainstNullArgument("console", console);
            Guard.AgainstNullArgument("assemblyResolver", assemblyResolver);
            Guard.AgainstNullArgument("fileSystemMigrator", fileSystemMigrator);
            Guard.AgainstNullArgument("composer", composer);

            _scriptName = scriptName;
            _scriptArgs = scriptArgs;
            _fileSystem = fileSystem;
            _scriptPackResolver = scriptPackResolver;
            _repl = repl;
            _logger = logProvider.ForCurrentType();
            _console = console;
            _assemblyResolver = assemblyResolver;
            _fileSystemMigrator = fileSystemMigrator;
            _composer = composer;
        }
コード例 #5
1
 public EventStoreEventPersistence(
     ILog log,
     IEventStoreConnection connection)
 {
     _log = log;
     _connection = connection;
 }
コード例 #6
1
 static void EnsureTargetFile(string pathToLock, ILog log)
 {
     try
     {
         var directoryName = Path.GetDirectoryName(pathToLock);
         if (!Directory.Exists(directoryName))
         {
             log.Info("Directory {0} does not exist - creating it now", pathToLock);
             Directory.CreateDirectory(directoryName);
         }
     }
     catch (IOException)
     {
         //Someone else did this under us
     }
     try
     {
         if (!File.Exists(pathToLock))
         {
             File.WriteAllText(pathToLock, "A");
         }
     }
     catch (IOException)
     {
         //Someone else did this under us
     }
 }
コード例 #7
1
 protected CommonScriptEngine(IScriptHostFactory scriptHostFactory, ILogProvider logProvider)
 {
     Guard.AgainstNullArgument("logProvider", logProvider);
     ScriptOptions = new ScriptOptions().WithReferences(typeof(Object).Assembly);
     _scriptHostFactory = scriptHostFactory;
     _log = logProvider.ForCurrentType();
 }
コード例 #8
1
ファイル: PostgreSqlSagaStorage.cs プロジェクト: nls75/Rebus
 /// <summary>
 /// Constructs the saga storage
 /// </summary>
 public PostgreSqlSagaStorage(PostgresConnectionHelper connectionHelper, string dataTableName, string indexTableName, IRebusLoggerFactory rebusLoggerFactory)
 {
     _connectionHelper = connectionHelper;
     _dataTableName = dataTableName;
     _indexTableName = indexTableName;
     _log = rebusLoggerFactory.GetCurrentClassLogger();
 }
コード例 #9
1
 public RoslynScriptEngine(IScriptHostFactory scriptHostFactory, ILog logger)
 {
     _scriptEngine = new ScriptEngine();
     _scriptEngine.AddReference(typeof(ScriptExecutor).Assembly);
     _scriptHostFactory = scriptHostFactory;
     _logger = logger;
 }
コード例 #10
1
        /// <summary>
        /// Initializes a new instance of the <see cref="JobStore"/> class.
        /// </summary>
        public JobStore()
        {
            log = LogManager.GetLogger(GetType());

            string connectionString;

            if( ConfigurationManager.ConnectionStrings["quartznet-mongodb"] != null )
                connectionString = ConfigurationManager.ConnectionStrings["quartznet-mongodb"].ConnectionString;
            else
                connectionString = DefaultConnectionString;

            //
            // If there is no connection string to use then throw an 
            // exception to abort construction.
            //

            if (string.IsNullOrWhiteSpace(connectionString))
                throw new ApplicationException("Connection string is missing for the MongoDB job store.");

            lock (lockObject)
            {
                var urlBuilder = new MongoUrlBuilder(connectionString);
                var client = new MongoClient(urlBuilder.ToMongoUrl());
                this.database = client.GetServer().GetDatabase(urlBuilder.DatabaseName);
            }
        }
コード例 #11
1
 public ApplicationContext(string projectRoot, ProjectConfig projectConfig, UserConfig userConfig, ILog log)
 {
     mProjectRoot = projectRoot;
     mProjectConfig = projectConfig;
     mUserConfig = userConfig;
     mLog = log;
 }
コード例 #12
1
 public ArchivingEngine(
     string sourceRootFolder,
     string targetRootFolder,
     ArchivingSettings settings,
     TotalStatistics statistics,
     ILog log)
 {
     this.sourceRootFolder = sourceRootFolder;
     this.targetRootFolder = targetRootFolder;
     this.statistics = statistics;
     this.settings = settings;
     this.log = log;
     queue = new RingBuffer<Processing>();
     processingDistributor = new ProcessingDistributor(
         sourceRootFolder,
         targetRootFolder,
         statistics,
         queue,
         log);
     processingPool = new PipelinesPool(processingDistributor);
     retrievingDistributor = new RetrievingDistributor(
         queue,
         log);
     retrievingPool = new PipelinesPool(retrievingDistributor);
 }
コード例 #13
1
ファイル: DaoClienteLog.cs プロジェクト: phcbarros/Estudos
        /// <exception cref="MyException"></exception>
        public void Inserir(ICliente cliente, ILog log)
        {
            var sql = new StringBuilder();
            var tblLog = new TblClientesLog();

            sql.AppendFormat(" INSERT INTO {0} ({1},{2},{3}", tblLog.NomeTabela, tblLog.Clientes_Id, tblLog.Clientes_Nome, tblLog.Clientes_Status_Id);
            sql.AppendFormat(",{0},{1},{2})", tblLog.Usuarios_Id, tblLog.Operacao_Id, tblLog.DataHora);
            sql.Append(" VALUES (@id,@nome,@status_id");
            sql.Append(",@usuarios_id,@operacao_id,@datahora);");

            using (var dal = new DalHelperSqlServer())
            {
                try
                {
                    dal.CriarParametroDeEntrada("id", SqlDbType.Int, cliente.Id);
                    dal.CriarParametroDeEntrada("nome", SqlDbType.Char, cliente.Nome);
                    dal.CriarParametroDeEntrada("status_id", SqlDbType.SmallInt, cliente.Status.GetHashCode());
                    dal.CriarParametroDeEntrada("usuarios_id", SqlDbType.Int, log.Usuario.Id);
                    dal.CriarParametroDeEntrada("operacao_id", SqlDbType.SmallInt, log.Operacao.GetHashCode());
                    dal.CriarParametroDeEntrada("datahora", SqlDbType.DateTime, log.DataHora);

                    dal.ExecuteNonQuery(sql.ToString());
                }
                catch (SqlException) { throw new MyException("Operação não realizada, por favor, tente novamente!"); }
            }
        }
コード例 #14
1
 public CallMmCodeDataProvider(IAmDataProvider dataProvider, IReadOnlyRepository repository, ILogCommandTypes logCommand)
 {
     _log = LogManager.GetLogger(GetType());
     _dataProvider = dataProvider;
     _repository = repository;
     _logCommand = logCommand;
 }
コード例 #15
1
 public HostBusService(IHostBusFactory hostBusFactory, IBusServiceConfigurator serviceConfigurator, string serviceName)
 {
     _log = Logger.Get(GetType());
     _hostBusFactory = hostBusFactory;
     _serviceConfigurator = serviceConfigurator;
     _serviceName = serviceName;
 }
コード例 #16
1
        public static void DoLogDirectoryContent(ILog logger, string directory)
        {
            if (logger == null)
                throw new ArgumentNullException("logger");

            bool exists = Directory.Exists(directory);

            logger.Info("-- Logging directory content:");
            logger.Info("Directory: '" + directory + "'");
            logger.Info("Directory exists: " + exists);

            if (exists)
            {
                string[] files = Directory.GetFiles(directory);
                foreach (string file in files)
                {
                    FileInfo fileInfo = new FileInfo(file);
                    logger.Info("File: '" + file + "' (size=" + fileInfo.Length + ")");
                }

                string[] directories = Directory.GetDirectories(directory);
                foreach (string subDirectory in directories)
                {
                    logger.Info("Directory: '" + subDirectory + "'");
                }
            }

            logger.Info("--");
        }
コード例 #17
1
 public QuartzService()
 {
     InitializeComponent();
     logger = LogManager.GetLogger(GetType());
     ISchedulerFactory schedulerFactory = new StdSchedulerFactory();
     scheduler = schedulerFactory.GetScheduler();
 }
コード例 #18
0
        public FileSystemExclusiveLock(string pathToLock, ILog log)
        {
            EnsureTargetFile(pathToLock, log);

            var success = false;

            //Unfortunately this is the only filesystem locking api that .net exposes
            //You can P/Invoke into better ones but thats not cross-platform
            while (!success)
            {
                try
                {
                    _fileStream = new FileStream(pathToLock, FileMode.Open, FileAccess.ReadWrite, FileShare.ReadWrite);
                    // Oh and there's no async version!
                    _fileStream.Lock(0, 1);
                    success = true;
                }
                catch (IOException)
                {
                    success = false;
                    //Have I mentioned that I hate this algorithm?
                    //This basically just causes the thread to yield to the scheduler
                    //we'll be back here more than 1 tick from now
                    Thread.Sleep(TimeSpan.FromTicks(1));
                }
            }
        }
コード例 #19
0
ファイル: Session.cs プロジェクト: vc3/Amnesia
        /// <summary>
        /// Starts a new Amnesia session with a remote application
        /// </summary>
        public Session(string appUrl, ILog log)
        {
            this.log = log ?? NullLog.Instance;

            this.serviceUrl = appUrl + Amnesia.Settings.Current.HandlerPath;

            // Start a new distributed transaction
            TxScope = new TransactionScope(TransactionScopeOption.Required, TransactionTimeout);
            var request = new Handler.StartSessionRequest();
            Transaction tx = Transaction.Current;
            request.Transaction = tx;

            var response = request.Send(serviceUrl);
            LogResponse(response);

            response.ReceivedByClient();

            // Monitor the distributed transaction in order to detect if its aborted remotely.
            tx.EnlistVolatile(new AbortNotification((o, e) =>
            {
                if (isDisposed)
                    return;

                if (request.Transaction.TransactionInformation.Status == TransactionStatus.Aborted)
                {
                    Session.IsRollbackPending = true;
                }
            }),
            EnlistmentOptions.None);
        }
コード例 #20
0
ファイル: ActionsBase.cs プロジェクト: j2jensen/ravendb
 protected ActionsBase(DocumentDatabase database, SizeLimitedConcurrentDictionary<string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log)
 {
     Database = database;
     RecentTouches = recentTouches;
     UuidGenerator = uuidGenerator;
     Log = log;
 }
 public SqlServerCompactErrorLogSource(string connection, IErrorLogFileParser parser, ISettingsManager settingsManager, ILog log)
 {
     Connection = connection;
     _settingsManager = settingsManager;
     _parser = parser;
     _log = log;
 }
コード例 #22
0
        public FilesWinService(ILog log, IConfig config, IFirewallService firewallService)
            : base(log, true)
        {
            this.config = config;
            this.firewallService = firewallService;

            Uri baseAddress = config.FilesServiceUri;

            var webHttpBinding = new WebHttpBinding();
            webHttpBinding.Security.Mode = WebHttpSecurityMode.TransportCredentialOnly;
            webHttpBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.Basic;

            var serviceHost =  new IocServiceHost(typeof(FilesService), baseAddress);
            base.serviceHost = serviceHost;

            ServiceEndpoint endpoint = serviceHost.AddServiceEndpoint(typeof(IFilesService), webHttpBinding, baseAddress);
            endpoint.Behaviors.Add(new WebHttpBehavior());
            ServiceCredential filesCredentials = config.FilesCredentials;
            #if DEBUG
            log.Debug("FilesWinService baseAddress: {0} credentials: {1}:{2}",
                baseAddress, filesCredentials.Username, filesCredentials.Password);
            #endif
            serviceHost.Credentials.UserNameAuthentication.CustomUserNamePasswordValidator = new CustomUserNamePasswordValidator(filesCredentials);
            serviceHost.Credentials.UserNameAuthentication.UserNamePasswordValidationMode = UserNamePasswordValidationMode.Custom;
        }
コード例 #23
0
 public ScriptServices(
     IFileSystem fileSystem,
     IPackageAssemblyResolver packageAssemblyResolver, 
     IScriptExecutor executor,
     IScriptEngine engine,
     IFilePreProcessor filePreProcessor,
     IReplCommandService replCommandService,
     IScriptPackResolver scriptPackResolver, 
     IPackageInstaller packageInstaller,
     ILog logger,
     IAssemblyResolver assemblyResolver,
     IConsole console = null,
     IInstallationProvider installationProvider = null 
     )
 {
     FileSystem = fileSystem;
     PackageAssemblyResolver = packageAssemblyResolver;
     Executor = executor;
     Engine = engine;
     FilePreProcessor = filePreProcessor;
     ReplCommandService = replCommandService;
     ScriptPackResolver = scriptPackResolver;
     PackageInstaller = packageInstaller;
     Logger = logger;
     Console = console;
     AssemblyResolver = assemblyResolver;
     InstallationProvider = installationProvider;
 }
コード例 #24
0
        public NugetInstallationProvider(IFileSystem fileSystem, ILog logger)
        {
            Guard.AgainstNullArgument("fileSystem", fileSystem);

            _fileSystem = fileSystem;
            _logger = logger;
        }
コード例 #25
0
    protected void Page_Load(object sender, EventArgs e)
    {
        _logging = IoC.IoC.Get<ILog>();
        _date = IoC.IoC.Get<IDate>();
        _settings = IoC.IoC.Get<ISettings>();
        _emailNotificationItems = IoC.IoC.Get<IEmailNotificationItems>();
        _sendEmail = IoC.IoC.Get<IEmail>();
        _status = IoC.IoC.Get<IStatus>();

        var url = Request.Url.AbsoluteUri;

        if (Request.QueryString["csvfile"] == null)
        {
            numberOfRun += 1;
            _logging.Msg("CroneJob startet, " + numberOfRun);
            if (DateTime.Now.Hour == 8)
            {
                _sendEmail.SendEmail("*****@*****.**", "*****@*****.**", "Cronejob startet kl. 8:00, antal gange det er kørt siden sidst: " + numberOfRun, "");
                numberOfRun = 0;
            }
            url = null;
        }

        Run(url);
    }
コード例 #26
0
 /// <summary />
 public PatientRepository()
 {
     var client = new MongoClient(ConfigurationManager.ConnectionStrings["Mongo_patientcare_datamock"].ConnectionString);
     _log = new Logger("WebAPI : PatientRepository");
     _db = client.GetDatabase("patientcare_datamock");
     _patients = _db.GetCollection<BsonDocument>("Patients");
 }
コード例 #27
0
 public AvaTaxRateProvider(IContactService customerService, ILog log, params SettingEntry[] settings)
     : this()
 {
     Settings = settings;
     _logger = new AvalaraLogger(log);
     _customerSearchService = customerService;
 }
コード例 #28
0
        public FilesEventPersistence(
            ILog log,
            IJsonSerializer jsonSerializer,
            IFilesEventStoreConfiguration configuration,
            IFilesEventLocator filesEventLocator)
        {
            _log = log;
            _jsonSerializer = jsonSerializer;
            _filesEventLocator = filesEventLocator;
            _logFilePath = Path.Combine(configuration.StorePath, "Log.store");

            if (File.Exists(_logFilePath))
            {
                var json = File.ReadAllText(_logFilePath);
                var eventStoreLog = _jsonSerializer.Deserialize<EventStoreLog>(json);
                _globalSequenceNumber = eventStoreLog.GlobalSequenceNumber;
                _eventLog = eventStoreLog.Log ?? new Dictionary<long, string>();

                if (_eventLog.Count != _globalSequenceNumber)
                {
                    eventStoreLog = RecreateEventStoreLog(configuration.StorePath);
                    _globalSequenceNumber = eventStoreLog.GlobalSequenceNumber;
                    _eventLog = eventStoreLog.Log;
                }
            }
            else
            {
                _eventLog = new Dictionary<long, string>();
            }
        }
コード例 #29
0
		public SetupService(IConfigurationDataService configurationDataService, IPostDataService postDataService, ICategoryDataService categoryService, ILog logger)
		{
			this.configurationDataService = configurationDataService;
			this.postDataService = postDataService;
			this.categoryService = categoryService;
			this.logger = logger;
		}
コード例 #30
0
 public static Feat Parse(WikiPage page, WikiExport export, ILog log = null)
 {
     var feat = new Feat();
     var parser = new FeatParser(feat, page, export);
     parser.Execute(log);
     return feat;
 }
コード例 #31
0
 public AddressRepository(ILog log)
 {
     _log     = log;
     _context = new Orm.Entities();
 }
コード例 #32
0
 public GitHubUserRepo(ILog log)
 {
     this.log = log;
 }
 public KeepLastNonEmptyTopologyTransform(ILog log)
 {
     this.log = log ?? LogProvider.Get();
 }
コード例 #34
0
ファイル: TestTask.cs プロジェクト: zhangbinglxf/AionEmu
 public TestTask()
 {
     log    = LogManager.GetLogger(typeof(TestTask));
     taskId = 0;
 }
コード例 #35
0
 public QueryActions(DocumentDatabase database, SizeLimitedConcurrentDictionary <string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log)
     : base(database, recentTouches, uuidGenerator, log)
 {
 }
コード例 #36
0
 public HandleHeartBeat(Game game)
 {
     _game          = game;
     _logger        = LoggerProvider.GetLogger();
     _playerManager = game.PlayerManager;
 }
コード例 #37
0
 public WebSocketClient(string path, JsonSerializerSettings jsonSerializerSettings = null, ILog log = null) : this(path, jsonSerializerSettings)
 {
     _log = log;
 }
コード例 #38
0
    //public event DisposedHandler OnDisposed;

    protected BaseService()
    {
        Logger = LogManager.GetLogger(GetType());
    }
コード例 #39
0
        /// <summary>PdfCatalog will be flushed in PdfDocument.close().</summary>
        /// <remarks>PdfCatalog will be flushed in PdfDocument.close(). User mustn't flush PdfCatalog!</remarks>
        public override void Flush()
        {
            ILog logger = LogManager.GetLogger(typeof(PdfDocument));

            logger.Warn("PdfCatalog cannot be flushed manually");
        }
コード例 #40
0
ファイル: OrderPlacedHandler.cs プロジェクト: kkulewski/soa
 public OrderPlacedHandler(ILog log, IOrderRepository orders)
 {
     this.log    = log;
     this.orders = orders;
 }
コード例 #41
0
 public FilmeXGeneroService(IFilmeXGenero repository, ILog log)
 {
     _repository = repository;
     _log        = log;
 }
コード例 #42
0
 public CustApiController(IComponentContext iocContext, ILog logger)
 {
     _iocContext = iocContext;
     _logger     = logger;
 }
コード例 #43
0
        public static GroupInfo ToGroupInfo(this LdapObject ldapGroup, LdapSettings settings, ILog log = null)
        {
            var name = ldapGroup.GetAttribute(settings.GroupNameAttribute, log);

            if (string.IsNullOrEmpty(name))
            {
                throw new Exception("LDAP GroupNameAttribute is empty");
            }

            var group = new GroupInfo
            {
                Name = name,
                Sid  = ldapGroup.Sid
            };

            return(group);
        }
コード例 #44
0
ファイル: LogController.cs プロジェクト: sunflower2018/Demo
 public LogController(ILogger <LogController> logger)
 {
     this.logger        = logger;
     this.logger_nlog   = NLog.LogManager.GetCurrentClassLogger();
     this.loger_log4net = log4net.LogManager.GetLogger(Startup.Repository.Name, typeof(LogController));
 }
コード例 #45
0
 public DistributionListRepository(ILog log, IDistributionDeptRepository deptRepository) : base(log)
 {
     _deptRepository = deptRepository;
 }
コード例 #46
0
ファイル: TestTask.cs プロジェクト: zhangbinglxf/AionEmu
 public TestTask(int id)
 {
     log    = LogManager.GetLogger(typeof(TestTask));
     taskId = 0;
     taskId = id;
 }
コード例 #47
0
        public static UserInfo ToUserInfo(this LdapObject ldapUser, LdapUserImporter ldapUserImporter, ILog log = null)
        {
            var settings = ldapUserImporter.Settings;
            var resource = ldapUserImporter.Resource;

            var userName = ldapUser.GetAttribute(settings.LoginAttribute, log);

            var firstName    = settings.LdapMapping.ContainsKey(Mapping.FirstNameAttribute) ? ldapUser.GetAttribute(settings.LdapMapping[Mapping.FirstNameAttribute], log) : string.Empty;
            var secondName   = settings.LdapMapping.ContainsKey(Mapping.SecondNameAttribute) ? ldapUser.GetAttribute(settings.LdapMapping[Mapping.SecondNameAttribute], log) : string.Empty;
            var birthDay     = settings.LdapMapping.ContainsKey(Mapping.BirthDayAttribute) ? ldapUser.GetAttribute(settings.LdapMapping[Mapping.BirthDayAttribute], log) : string.Empty;
            var gender       = settings.LdapMapping.ContainsKey(Mapping.GenderAttribute) ? ldapUser.GetAttribute(settings.LdapMapping[Mapping.GenderAttribute], log) : string.Empty;
            var primaryPhone = settings.LdapMapping.ContainsKey(Mapping.MobilePhoneAttribute) ? ldapUser.GetAttribute(settings.LdapMapping[Mapping.MobilePhoneAttribute], log) : string.Empty;
            var mail         = settings.LdapMapping.ContainsKey(Mapping.MailAttribute) ? ldapUser.GetAttribute(settings.LdapMapping[Mapping.MailAttribute], log) : string.Empty;
            var title        = settings.LdapMapping.ContainsKey(Mapping.TitleAttribute) ? ldapUser.GetAttribute(settings.LdapMapping[Mapping.TitleAttribute], log) : string.Empty;
            var location     = settings.LdapMapping.ContainsKey(Mapping.LocationAttribute) ? ldapUser.GetAttribute(settings.LdapMapping[Mapping.LocationAttribute], log) : string.Empty;

            var phones       = ldapUser.GetContacts(Mapping.AdditionalPhone, settings, log);
            var mobilePhones = ldapUser.GetContacts(Mapping.AdditionalMobilePhone, settings, log);
            var emails       = ldapUser.GetContacts(Mapping.AdditionalMail, settings, log);
            var skype        = ldapUser.GetContacts(Mapping.Skype, settings, log);


            if (string.IsNullOrEmpty(userName))
            {
                throw new Exception("LDAP LoginAttribute is empty");
            }

            var contacts = new List <string>();

            PopulateContacts(contacts, EXT_PHONE, phones);
            PopulateContacts(contacts, EXT_MOB_PHONE, mobilePhones);
            PopulateContacts(contacts, EXT_MAIL, emails);
            PopulateContacts(contacts, EXT_SKYPE, skype);

            var user = new UserInfo
            {
                ID               = Guid.Empty,
                UserName         = userName,
                Sid              = ldapUser.Sid,
                ActivationStatus = settings.SendWelcomeEmail && !string.IsNullOrEmpty(mail) ? EmployeeActivationStatus.Pending : EmployeeActivationStatus.NotActivated,
                Status           = ldapUser.IsDisabled ? EmployeeStatus.Terminated : EmployeeStatus.Active,
                Title            = !string.IsNullOrEmpty(title) ? title : string.Empty,
                Location         = !string.IsNullOrEmpty(location) ? location : string.Empty,
                WorkFromDate     = TenantUtil.DateTimeNow(),
                Contacts         = contacts
            };

            if (!string.IsNullOrEmpty(firstName))
            {
                user.FirstName = firstName.Length > MAX_NUMBER_OF_SYMBOLS
                    ? firstName.Substring(0, MAX_NUMBER_OF_SYMBOLS)
                    : firstName;
            }
            else
            {
                user.FirstName = resource.FirstName;
            }

            if (!string.IsNullOrEmpty(secondName))
            {
                user.LastName = secondName.Length > MAX_NUMBER_OF_SYMBOLS
                    ? secondName.Substring(0, MAX_NUMBER_OF_SYMBOLS)
                    : secondName;
            }
            else
            {
                user.LastName = resource.LastName;
            }

            if (!string.IsNullOrEmpty(birthDay))
            {
                DateTime date;
                if (DateTime.TryParse(birthDay, out date))
                {
                    user.BirthDate = date;
                }
            }

            if (!string.IsNullOrEmpty(gender))
            {
                bool b;
                if (bool.TryParse(gender, out b))
                {
                    user.Sex = b;
                }
                else
                {
                    switch (gender.ToLowerInvariant())
                    {
                    case "male":
                    case "m":
                        user.Sex = true;
                        break;

                    case "female":
                    case "f":
                        user.Sex = false;
                        break;
                    }
                }
            }

            if (string.IsNullOrEmpty(mail))
            {
                user.Email            = userName.Contains("@") ? userName : string.Format("{0}@{1}", userName, ldapUserImporter.LDAPDomain);
                user.ActivationStatus = EmployeeActivationStatus.AutoGenerated;
            }
            else
            {
                user.Email = mail;
            }

            user.MobilePhone = string.IsNullOrEmpty(primaryPhone)
                ? null : primaryPhone;

            return(user);
        }
コード例 #48
0
ファイル: RavenTest.cs プロジェクト: xinix00/ravendb
 public override bool ShouldLog(ILog logger, LogLevel level)
 {
     return(true);
 }
コード例 #49
0
 public AssemblyCodecTest(ILog log)
 {
     this.log     = log;
     this.decoder = new DecoderState(log, new TypeResolver().ReadOnlyView);
     this.encoder = new EncoderState();
 }
コード例 #50
0
 public override void WriteOptionsToLog(ILog logger)
 {
     logger.Info("Using the following options for SQL Server job storage:");
     logger.Info($"    Queue poll interval: {_options.QueuePollInterval}.");
 }
コード例 #51
0
 public PacketBase()
 {
     Logger = LogManager.GetLogger(GetTypeName());
 }
コード例 #52
0
 /// <summary>
 /// Initializes a new instance of the <see cref="T:System.Object" /> class.
 /// </summary>
 /// <param name="logger">The logger.</param>
 public InMemoryJoinRepository(ILog logger) : base(logger)
 {
 }
コード例 #53
0
ファイル: BuildKite.cs プロジェクト: franknarf8/GitVersion
 public BuildKite(IEnvironment environment, ILog log) : base(environment, log)
 {
 }
コード例 #54
0
 /// <summary>
 /// Creates instance of this class.
 /// </summary>
 /// <param name="log">Logger.</param>
 internal ClientToServerSync(VirtualDriveBase virtualDrive, ILog log) : base("UFS -> RS Sync", log)
 {
     this.virtualDrive = virtualDrive;
 }
コード例 #55
0
        private static List <string> GetContacts(this LdapObject ldapUser, Mapping key, LdapSettings settings, ILog log = null)
        {
            if (!settings.LdapMapping.ContainsKey(key))
            {
                return(null);
            }

            var bindings = settings.LdapMapping[key].Split(',').Select(x => x.Trim()).ToArray();

            if (bindings.Length > 1)
            {
                var list = new List <string>();
                foreach (var bind in bindings)
                {
                    list.AddRange(ldapUser.GetAttributes(bind, log));
                }
                return(list);
            }
            else
            {
                return(ldapUser.GetAttributes(bindings[0], log));
            }
        }
コード例 #56
0
ファイル: EmailRepository.cs プロジェクト: BryceAshey/disty
 public EmailRepository(ILog log)
     : base(log)
 {
 }
コード例 #57
0
        public static List <string> GetAttributes(this LdapObject ldapObject, string attribute, ILog log = null)
        {
            var list = new List <string>();

            if (string.IsNullOrEmpty(attribute))
            {
                return(list);
            }

            try
            {
                return(ldapObject.GetValues(attribute));
            }
            catch (Exception e)
            {
                if (log != null)
                {
                    log.ErrorFormat("Can't get attributes from ldap object (attr = {0}, dn = {1}) error: {2}",
                                    attribute, ldapObject.DistinguishedName, e);
                }

                return(list);
            }
        }
コード例 #58
0
        public static string GetAttribute(this LdapObject ldapObject, string attribute, ILog log = null)
        {
            if (string.IsNullOrEmpty(attribute))
            {
                return(string.Empty);
            }

            try
            {
                return(ldapObject.GetValue(attribute) as string);
            }
            catch (Exception e)
            {
                if (log != null)
                {
                    log.ErrorFormat("Can't get attribute from ldap object (attr = {0}, dn = {1}) error: {2}",
                                    attribute, ldapObject.DistinguishedName, e);
                }

                return(string.Empty);
            }
        }
コード例 #59
0
ファイル: Program.cs プロジェクト: radtek/HighpinQuartz
        static void Main(string[] args)
        {
            ILog log        = log4net.LogManager.GetLogger("loginfo");
            ILog logerr     = log4net.LogManager.GetLogger("logerror");
            var  properties = new NameValueCollection();

            properties["quartz.jobStore.clustered"]   = "true";
            properties["quartz.scheduler.instanceId"] = "AUTO";
            //===持久化====
            // 存储类型
            properties["quartz.jobStore.type"] = "Quartz.Impl.AdoJobStore.JobStoreTX, Quartz";
            //表明前缀
            properties["quartz.jobStore.tablePrefix"] = "QRTZ_";
            //驱动类型
            properties["quartz.jobStore.driverDelegateType"] = "Quartz.Impl.AdoJobStore.SqlServerDelegate, Quartz";
            //数据源名称
            properties["quartz.jobStore.dataSource"] = "myDS";
            //连接字符串
            properties["quartz.dataSource.myDS.connectionString"] = @"Data Source = SHOU-PC\SQLEXPRESS;Initial Catalog = JobScheduler;Integrated Security = SSPI;";
            //sqlserver版本
            properties["quartz.dataSource.myDS.provider"] = "SqlServer-20";

            QuartzFactory quartzFactory = new QuartzFactory(null);

            quartzFactory.Start();

            if (!HttpListener.IsSupported)
            {
                throw new System.InvalidOperationException(
                          "使用 HttpListener 必须为 Windows XP SP2 或 Server 2003 以上系统!");
            }
            // 注意前缀必须以 / 正斜杠结尾
            string[]       prefixes = new string[] { Monitoring + ":39152/" };
            IList <string> removed  = new List <string>();
            // 创建监听器.
            HttpListener listener = new HttpListener();

            listener.AuthenticationSchemes = AuthenticationSchemes.Anonymous;//指定身份验证 Anonymous匿名访问
            // 增加监听的前缀.
            foreach (string s in prefixes)
            {
                listener.Prefixes.Add(s);
            }

            try
            {
                listener.Start();
                log.Info("监听中..." + Monitoring);
                //可以改成iocp模型 以下监控可以放到factory moniter中 监控代码改成cmd模式,页面用velcity做,
                Thread thread31 = new Thread(() =>
                {
                    while (true)
                    {
                        // 注意: GetContext 方法将阻塞线程,直到请求到达
                        HttpListenerContext context = listener.GetContext();
                        // 取得请求对象
                        HttpListenerRequest request   = context.Request;
                        HttpListenerResponse response = context.Response;
                        log.Info(string.Format("{0} {1} HTTP/1.1", request.HttpMethod, request.RawUrl));
                        if (request.RawUrl.Contains("stopjob"))
                        {
                            string name            = request.QueryString.Get("jobname");
                            var list               = quartzFactory.GetCurrentScheduer.QuartzTaskList;
                            IQuartzTask quartzTask = null;
                            if (list.TryGetValue(name, out quartzTask))
                            {
                                removed.Add(name);
                                quartzTask.StopJob();
                            }
                        }

                        else if (request.RawUrl.Contains("pausejob"))
                        {
                            string name            = request.QueryString.Get("jobname");
                            var list               = quartzFactory.GetCurrentScheduer.QuartzTaskList;
                            IQuartzTask quartzTask = null;
                            if (list.TryGetValue(name, out quartzTask))
                            {
                                quartzTask.Pause();
                            }
                        }
                        else if (request.RawUrl.Contains("resumejob"))
                        {
                            string name            = request.QueryString.Get("jobname");
                            var list               = quartzFactory.GetCurrentScheduer.QuartzTaskList;
                            IQuartzTask quartzTask = null;
                            if (list.TryGetValue(name, out quartzTask))
                            {
                                quartzTask.Resume();
                            }
                        }

                        else if (request.RawUrl.Contains("startjob"))
                        {
                            string name            = request.QueryString.Get("jobname");
                            var list               = quartzFactory.GetCurrentScheduer.QuartzTaskList;
                            IQuartzTask quartzTask = null;
                            if (!list.TryGetValue(name, out quartzTask))
                            {
                                removed.Remove(name);
                                quartzFactory.AddJob(name);
                            }
                        }
                        else if (request.RawUrl.Contains("stopservice"))
                        {
                            quartzFactory.GetCurrentScheduer.Stop();
                        }

                        else if (request.RawUrl.Contains("startservice"))
                        {
                            removed.Clear();
                            quartzFactory.Start();
                        }

                        var list1        = quartzFactory.GetCurrentScheduer.QuartzTaskList;
                        StringBuilder sb = new StringBuilder();
                        sb.AppendFormat("当前服务状态【{0}】", quartzFactory.GetCurrentScheduer.GetScheduleStatus.ToString());
                        sb.Append("<a href='" + Monitoring + ":39152/'>【刷新】</a>");
                        sb.Append("<a href='" + Monitoring + ":39152/stopservice'>【停止全部任务】</a>");
                        sb.Append("<a href='" + Monitoring + ":39152/startservice'>【启动全部任务】</a>");
                        sb.Append("</br>");
                        sb.Append("-------以下是正在执行的任务-------");
                        sb.Append("</br>");
                        foreach (var item in list1)
                        {
                            sb.AppendFormat("组名{0}:服务名{1}:当前状态【{2}】:下次执行时间{3}", item.Value.GroupName, item.Key, item.Value.JobStatus.ToString(), item.Value.GetNexeTime());
                            sb.AppendFormat("<a href='" + Monitoring + ":39152/pausejob?jobname={0}'>【暂停】</a>", item.Key);
                            sb.AppendFormat("<a href='" + Monitoring + ":39152/resumejob?jobname={0}'>【继续】</a>", item.Key);
                            sb.AppendFormat("<a href='" + Monitoring + ":39152/stopjob?jobname={0}'>【停止】</a>", item.Key);
                            sb.Append("</br>");
                        }
                        sb.Append("-------以下是已经停止的任务------");
                        sb.Append("</br>");
                        foreach (var it in removed)
                        {
                            sb.Append(it);
                            sb.AppendFormat("<a href='" + Monitoring + ":39152/startjob?jobname={0}'>【开始】</a>", it);
                            sb.Append("</br>");
                        }

                        sb.Append("-------以下是没有增加的任务------");
                        sb.Append("</br>");
                        var listsurplus = SurplusPlug(quartzFactory.GetPlugs(), list1.Keys.ToList(), removed);
                        foreach (var it in listsurplus)
                        {
                            sb.Append(it);
                            sb.AppendFormat("<a href='" + Monitoring + ":39152/startjob?jobname={0}'>【加载启动】</a>", it);
                            sb.Append("</br>");
                        }

                        string responseString    = @"<html> <head><title>From HttpListener Server</title></head> <body>" + sb.ToString() + "</body> </html>";
                        response.ContentLength64 = System.Text.Encoding.UTF8.GetByteCount(responseString);
                        response.ContentType     = "text/html; charset=UTF-8";
                        // 输出回应内容
                        System.IO.Stream output       = response.OutputStream;
                        System.IO.StreamWriter writer = new System.IO.StreamWriter(output);
                        writer.Write(responseString);
                        // 必须关闭输出流
                        writer.Close();
                        //if (Console.KeyAvailable)
                        //    break;
                    }
                });
                thread31.Start();
            }
            catch (Exception oe)
            {
                logerr.Error(oe.Message);
            }
        }
コード例 #60
0
 public override void WriteOptionsToLog(ILog logger)
 {
     logger.Info("Using the following options for SQL Server job storage:");
     logger.InfoFormat("    Queue poll interval: {0}.", _options.QueuePollInterval);
     logger.InfoFormat("    Invisibility timeout: {0}.", _options.InvisibilityTimeout);
 }