public TaskActions(RavenFileSystem fileSystem, ILog log) : base(fileSystem, log) { timer = Observable.Interval(TimeSpan.FromMinutes(1)); InitializeTimer(); }
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"); }
public SmtpClientSession(ILog log, SmtpClientSessionConfiguration configuration, MessageData messageData) { _log = log; _configuration = configuration; _messageData = messageData; }
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; }
public EventStoreEventPersistence( ILog log, IEventStoreConnection connection) { _log = log; _connection = connection; }
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 } }
protected CommonScriptEngine(IScriptHostFactory scriptHostFactory, ILogProvider logProvider) { Guard.AgainstNullArgument("logProvider", logProvider); ScriptOptions = new ScriptOptions().WithReferences(typeof(Object).Assembly); _scriptHostFactory = scriptHostFactory; _log = logProvider.ForCurrentType(); }
/// <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(); }
public RoslynScriptEngine(IScriptHostFactory scriptHostFactory, ILog logger) { _scriptEngine = new ScriptEngine(); _scriptEngine.AddReference(typeof(ScriptExecutor).Assembly); _scriptHostFactory = scriptHostFactory; _logger = logger; }
/// <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); } }
public ApplicationContext(string projectRoot, ProjectConfig projectConfig, UserConfig userConfig, ILog log) { mProjectRoot = projectRoot; mProjectConfig = projectConfig; mUserConfig = userConfig; mLog = log; }
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); }
/// <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!"); } } }
public CallMmCodeDataProvider(IAmDataProvider dataProvider, IReadOnlyRepository repository, ILogCommandTypes logCommand) { _log = LogManager.GetLogger(GetType()); _dataProvider = dataProvider; _repository = repository; _logCommand = logCommand; }
public HostBusService(IHostBusFactory hostBusFactory, IBusServiceConfigurator serviceConfigurator, string serviceName) { _log = Logger.Get(GetType()); _hostBusFactory = hostBusFactory; _serviceConfigurator = serviceConfigurator; _serviceName = serviceName; }
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("--"); }
public QuartzService() { InitializeComponent(); logger = LogManager.GetLogger(GetType()); ISchedulerFactory schedulerFactory = new StdSchedulerFactory(); scheduler = schedulerFactory.GetScheduler(); }
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)); } } }
/// <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); }
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; }
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; }
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; }
public NugetInstallationProvider(IFileSystem fileSystem, ILog logger) { Guard.AgainstNullArgument("fileSystem", fileSystem); _fileSystem = fileSystem; _logger = logger; }
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); }
/// <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"); }
public AvaTaxRateProvider(IContactService customerService, ILog log, params SettingEntry[] settings) : this() { Settings = settings; _logger = new AvalaraLogger(log); _customerSearchService = customerService; }
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>(); } }
public SetupService(IConfigurationDataService configurationDataService, IPostDataService postDataService, ICategoryDataService categoryService, ILog logger) { this.configurationDataService = configurationDataService; this.postDataService = postDataService; this.categoryService = categoryService; this.logger = logger; }
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; }
public AddressRepository(ILog log) { _log = log; _context = new Orm.Entities(); }
public GitHubUserRepo(ILog log) { this.log = log; }
public KeepLastNonEmptyTopologyTransform(ILog log) { this.log = log ?? LogProvider.Get(); }
public TestTask() { log = LogManager.GetLogger(typeof(TestTask)); taskId = 0; }
public QueryActions(DocumentDatabase database, SizeLimitedConcurrentDictionary <string, TouchedDocumentInfo> recentTouches, IUuidGenerator uuidGenerator, ILog log) : base(database, recentTouches, uuidGenerator, log) { }
public HandleHeartBeat(Game game) { _game = game; _logger = LoggerProvider.GetLogger(); _playerManager = game.PlayerManager; }
public WebSocketClient(string path, JsonSerializerSettings jsonSerializerSettings = null, ILog log = null) : this(path, jsonSerializerSettings) { _log = log; }
//public event DisposedHandler OnDisposed; protected BaseService() { Logger = LogManager.GetLogger(GetType()); }
/// <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"); }
public OrderPlacedHandler(ILog log, IOrderRepository orders) { this.log = log; this.orders = orders; }
public FilmeXGeneroService(IFilmeXGenero repository, ILog log) { _repository = repository; _log = log; }
public CustApiController(IComponentContext iocContext, ILog logger) { _iocContext = iocContext; _logger = logger; }
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); }
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)); }
public DistributionListRepository(ILog log, IDistributionDeptRepository deptRepository) : base(log) { _deptRepository = deptRepository; }
public TestTask(int id) { log = LogManager.GetLogger(typeof(TestTask)); taskId = 0; taskId = id; }
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); }
public override bool ShouldLog(ILog logger, LogLevel level) { return(true); }
public AssemblyCodecTest(ILog log) { this.log = log; this.decoder = new DecoderState(log, new TypeResolver().ReadOnlyView); this.encoder = new EncoderState(); }
public override void WriteOptionsToLog(ILog logger) { logger.Info("Using the following options for SQL Server job storage:"); logger.Info($" Queue poll interval: {_options.QueuePollInterval}."); }
public PacketBase() { Logger = LogManager.GetLogger(GetTypeName()); }
/// <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) { }
public BuildKite(IEnvironment environment, ILog log) : base(environment, log) { }
/// <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; }
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)); } }
public EmailRepository(ILog log) : base(log) { }
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); } }
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); } }
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); } }
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); }