private IDatabaseReader GetReader(IDatabaseComponent database, LibraryHierarchyNode libraryHierarchyNode, MetaDataItemType?metaDataItemType, string metaDataItemName, ITransactionSource transaction) { return(database.ExecuteReader(database.Queries.GetLibraryHierarchyMetaData(this.LibraryHierarchyBrowser.Filter), (parameters, phase) => { switch (phase) { case DatabaseParameterPhase.Fetch: parameters["libraryHierarchyItemId"] = libraryHierarchyNode.Id; if (metaDataItemType.HasValue) { parameters["type"] = metaDataItemType.Value; } else { parameters["type"] = null; } if (!string.IsNullOrEmpty(metaDataItemName)) { parameters["name"] = metaDataItemName; } else { parameters["name"] = null; } break; } }, transaction)); }
private static IDatabaseCommand CreateCommand(IDatabaseComponent database, ITransactionSource transaction) { var query = database.QueryFactory.Build(); query.Add.AddColumn(database.Tables.LibraryItem.Column("DirectoryName")); query.Add.AddColumn(database.Tables.LibraryItem.Column("FileName")); query.Add.AddColumn(database.Tables.LibraryItem.Column("ImportDate")); query.Add.AddColumn(database.Tables.LibraryItem.Column("Status")); query.Add.AddColumn(database.Tables.LibraryItem.Column("Flags")); query.Add.SetTable(database.Tables.LibraryItem); query.Output.AddParameter("DirectoryName", DbType.String, 0, 0, 0, ParameterDirection.Input, false, null, DatabaseQueryParameterFlags.None); query.Output.AddParameter("FileName", DbType.String, 0, 0, 0, ParameterDirection.Input, false, null, DatabaseQueryParameterFlags.None); query.Output.AddParameter("ImportDate", DbType.String, 0, 0, 0, ParameterDirection.Input, false, null, DatabaseQueryParameterFlags.None); query.Output.AddParameter("Status", DbType.Byte, 0, 0, 0, ParameterDirection.Input, false, null, DatabaseQueryParameterFlags.None); query.Output.AddParameter("Flags", DbType.Byte, 0, 0, 0, ParameterDirection.Input, false, null, DatabaseQueryParameterFlags.None); query.Filter.Expressions.Add( query.Filter.CreateUnary( QueryOperator.Not, query.Filter.CreateFunction( QueryFunction.Exists, query.Filter.CreateSubQuery( database.QueryFactory.Build().With(subQuery => { subQuery.Output.AddOperator(QueryOperator.Star); subQuery.Source.AddTable(database.Tables.LibraryItem); subQuery.Filter.AddColumn(database.Tables.LibraryItem.Column("FileName")); }) ) ) ) ); return(database.CreateCommand(query.Build(), DatabaseCommandFlags.NoCache, transaction)); }
public LibraryPopulator(IDatabaseComponent database, IPlaybackManager playbackManager, bool reportProgress, ITransactionSource transaction) : base(reportProgress) { this.Database = database; this.PlaybackManager = playbackManager; this.Transaction = transaction; }
public static async Task RemoveCancelledLibraryItems(IDatabaseComponent database) { using (var transaction = database.BeginTransaction(database.PreferredIsolationLevel)) { await database.ExecuteAsync(database.Queries.RemoveCancelledLibraryItems).ConfigureAwait(false); } }
public static async Task UpdatePlaylistItem(IDatabaseComponent database, int playlistItemId, Action <PlaylistItem> action, ITransactionSource transaction) { var table = database.Tables.PlaylistItem; var builder = database.QueryFactory.Build(); builder.Output.AddColumns(table.Columns); builder.Source.AddTable(table); builder.Filter.AddColumns(table.PrimaryKeys); var query = builder.Build(); var playlistItem = default(PlaylistItem); using (var sequence = database.ExecuteAsyncEnumerator <PlaylistItem>(query, (parameters, phase) => { switch (phase) { case DatabaseParameterPhase.Fetch: parameters[table.PrimaryKey] = playlistItemId; break; } }, transaction)) { if (await sequence.MoveNextAsync().ConfigureAwait(false)) { playlistItem = sequence.Current; } } action(playlistItem); await UpdatePlaylistItem(database, playlistItem, transaction).ConfigureAwait(false); }
public HistoryDataListViewModel(IEventAggregator eventAggregator, IOrganizationService organizationService, IDatabaseComponent databaseComponent, ICardProcess cardProcess, IHardwareService hardwareService) { _eventAggregator = eventAggregator; _organizationService = organizationService; _databaseComponent = databaseComponent; _cardProcess = cardProcess; _hardwareService = hardwareService; _vInfoObjectsView = new ListCollectionView(vInfoCollection); _vInfoObjectsView.Filter = (object item) => { return(true); }; _vInfoObjectsView.GroupDescriptions.Add(new PropertyGroupDescription("OrganizationName"));//对视图进行分组 //_vInfoObjectsView.GroupDescriptions.Add(new PropertyGroupDescription("DeviceName"));//对视图进行分组 //_vInfoObjectsView.GroupDescriptions.Add(new PropertyGroupDescription("ItemName"));//对视图进行分组 _anInfoObjectsView = new ListCollectionView(anInfoCollection); _anInfoObjectsView.Filter = (object item) => { return(true); }; _anInfoObjectsView.GroupDescriptions.Add(new PropertyGroupDescription("OrganizationName"));//对视图进行分组 //_anInfoObjectsView.GroupDescriptions.Add(new PropertyGroupDescription("DeviceName"));//对视图进行分组 //_anInfoObjectsView.GroupDescriptions.Add(new PropertyGroupDescription("ItemName"));//对视图进行分组 _divFreObjectsView = new ListCollectionView(divFreCollection); _divFreObjectsView.Filter = (object item) => { return(true); }; _divFreObjectsView.GroupDescriptions.Add(new PropertyGroupDescription("OrganizationName"));//对视图进行分组 InitTree(); }
private IDatabaseReader GetReader(IDatabaseComponent database, IEnumerable <PlaylistItem> playlistItems, MetaDataItemType?metaDataItemType, string metaDataItemName, ITransactionSource transaction) { return(database.ExecuteReader(database.Queries.GetPlaylistMetaData(playlistItems.Count()), (parameters, phase) => { switch (phase) { case DatabaseParameterPhase.Fetch: var position = 0; foreach (var playlistItem in playlistItems) { parameters["playlistItemId" + position] = playlistItem.Id; position++; } if (metaDataItemType.HasValue) { parameters["type"] = metaDataItemType.Value; } else { parameters["type"] = null; } if (!string.IsNullOrEmpty(metaDataItemName)) { parameters["name"] = metaDataItemName; } else { parameters["name"] = null; } break; } }, transaction)); }
private static IDatabaseCommand CreateUpdateCommand(IDatabaseComponent database, ITransactionSource transaction) { return(database.CreateCommand( database.Queries.UpdateLibraryHierarchyNode, DatabaseCommandFlags.NoCache, transaction )); }
protected MetaDataPopulator(IDatabaseComponent database, IDatabaseQuery query, bool reportProgress, ITransactionSource transaction) : base(reportProgress) { this.Database = database; this.Transaction = transaction; this.Query = query; this.Writer = new MetaDataWriter(this.Database, this.Query, this.Transaction); }
protected MetaDataPopulator(IDatabaseComponent database, IDatabaseQuery query, bool reportProgress, ITransactionSource transaction) : base(reportProgress) { this.Database = database; this.Transaction = transaction; this.Query = query; this.Writer = new MetaDataWriter(this.Database, this.Query, this.Transaction); this.Warnings = new ConcurrentDictionary <IFileData, IList <string> >(); }
public LibraryUpdater(IDatabaseComponent database, IEnumerable <LibraryItem> items, Func <LibraryItem, bool> predicate, Func <IDatabaseSet <LibraryItem>, LibraryItem, Task> task, bool reportProgress, ITransactionSource transaction) : base(reportProgress) { this.Database = database; this.Items = items; this.Predicate = predicate; this.Task = task; this.Transaction = transaction; }
public PlaylistPopulator(IDatabaseComponent database, IPlaybackManager playbackManager, int sequence, int offset, bool reportProgress, ITransactionSource transaction) : base(reportProgress) { this.Database = database; this.PlaybackManager = playbackManager; this.Sequence = sequence; this.Offset = offset; this.Transaction = transaction; }
public HistoryEventAlarmTrendViewModel(IEventAggregator eventAggregator, IOrganizationService organizationService, IDatabaseComponent databaseComponent, ICardProcess cardProcess, IHardwareService hardwareService) { _eventAggregator = eventAggregator; _organizationService = organizationService; _databaseComponent = databaseComponent; _cardProcess = cardProcess; _hardwareService = hardwareService; Initialization = InitializeAsync(); }
public DeviceHourlyDataViewModel(IEventAggregator eventAggregator, IOrganizationService organizationService, ISignalProcess signalProcess, ICardProcess cardProcess, IDatabaseComponent databaseComponent) { _eventAggregator = eventAggregator; _organizationService = organizationService; _signalProcess = signalProcess; _cardProcess = cardProcess; _databaseComponent = databaseComponent; InitTree(); StartTime = Convert.ToDateTime(DateTime.Now.AddDays(-7).ToString("yyyy-MM-dd")); }
public static async Task UpdateLibraryItem(IDatabaseComponent database, LibraryItem libraryItem) { using (var transaction = database.BeginTransaction(database.PreferredIsolationLevel)) { await UpdateLibraryItem(database, libraryItem, transaction).ConfigureAwait(false); if (transaction.HasTransaction) { transaction.Commit(); } } }
public static async Task UpdatePlaylistItem(IDatabaseComponent database, int playlistItemId, Action <PlaylistItem> action) { using (var transaction = database.BeginTransaction(database.PreferredIsolationLevel)) { await UpdatePlaylistItem(database, playlistItemId, action, transaction).ConfigureAwait(false); if (transaction.HasTransaction) { transaction.Commit(); } } }
public EditDeviceComponentsViewModel(IEventAggregator eventAggregator, IOrganizationService organizationService, ISignalProcess signalProcess, ICardProcess cardProcess, IDatabaseComponent databaseComponent, IRegionManager regionManager, IDeviceDiagnoseTemplateService deviceDiagnoseTemplateService) { _eventAggregator = eventAggregator; _organizationService = organizationService; _signalProcess = signalProcess; _cardProcess = cardProcess; _databaseComponent = databaseComponent; _regionManager = regionManager; _deviceDiagnoseTemplateService = deviceDiagnoseTemplateService; InitTree(); }
public static Task UpdatePlaylistItem(IDatabaseComponent database, PlaylistItem playlistItem, ITransactionSource transaction) { var table = database.Tables.PlaylistItem; var builder = database.QueryFactory.Build(); builder.Update.SetTable(table); builder.Update.AddColumns(table.UpdatableColumns); builder.Filter.AddColumns(table.PrimaryKeys); var query = builder.Build(); var parameters = new ParameterHandlerStrategy(table, playlistItem).Handler; return(database.ExecuteAsync(query, parameters, transaction)); }
public static Task RemovePlaylistItems(IDatabaseComponent database, int playlistId, PlaylistItemStatus status, ITransactionSource transaction) { return(database.ExecuteAsync(database.Queries.RemovePlaylistItems, (parameters, phase) => { switch (phase) { case DatabaseParameterPhase.Fetch: parameters["playlistId"] = playlistId; parameters["status"] = status; break; } }, transaction)); }
public LibraryHierarchyPopulator(IDatabaseComponent database, bool reportProgress, ITransactionSource transaction) : base(reportProgress) { this.Database = database; this.Transaction = transaction; #if NET40 this.Contexts = new TrackingThreadLocal <IScriptingContext>(); #else this.Contexts = new ThreadLocal <IScriptingContext>(true); #endif this.Writer = new LibraryHierarchyWriter(this.Database, this.Transaction); this.Roots = new Lazy <IEnumerable <string> >(() => this.GetRoots()); }
public HistoryEventListViewModel(IDatabaseComponent databaseComponent, ILoginUserService loginUserService, IOrganizationService organizationService) { _loginUserService = loginUserService; _organizationService = organizationService; _databaseComponent = databaseComponent; customSystemException = _loginUserService.CustomSystemException; ServerIPCategory = _databaseComponent.GetServerIPCategory(); ServerIP = _databaseComponent.MainServerIp; SearchStartTime = DateTime.Now.AddDays(-1); SearchEndTime = DateTime.Now; }
public OrganizationService(ICardProcess cardProcess, IDatabaseComponent databaseComponent) { _cardProcess = cardProcess; _databaseComponent = databaseComponent; OrganizationTreeItems = new ObservableCollection <OrganizationTreeItemViewModel>(); RecycledTreeItems = new ObservableCollection <OrganizationTreeItemViewModel>(); ItemTreeItems = new List <ItemTreeItemViewModel>(); DivFreTreeItems = new List <DivFreTreeItemViewModel>(); //T_Organization = new Dictionary<string, List<T1_Organization>>(); T_OrganizationPrivilege = new Dictionary <string, List <T1_OrganizationPrivilege> >(); //T_Item = new Dictionary<string, List<T1_Item>>(); T_DivFreInfo = new Dictionary <string, List <T1_DivFreInfo> >(); }
public void InitializeDatabase(IDatabaseComponent database, DatabaseInitializeType type) { ComponentRegistry.Instance.ForEach <IDatabaseInitializer>(component => { try { component.InitializeDatabase(database, type); } catch (Exception e) { Logger.Write(this, LogLevel.Warn, "Failed to initialize database {0}: {1}", component.GetType().Name, e.Message); } }); }
private static IDatabaseCommand CreateCommand(IDatabaseComponent database, ITransactionSource transaction) { var query = database.QueryFactory.Build(); query.Add.SetTable(database.Tables.PlaylistItem); query.Add.AddColumns(database.Tables.PlaylistItem.Columns.Except(database.Tables.PlaylistItem.PrimaryKeys)); query.Output.AddSubQuery(database.QueryFactory.Build().With(subQuery => { subQuery.Output.AddColumn(database.Tables.LibraryItem.Column("Id")); subQuery.Source.AddTable(database.Tables.LibraryItem); subQuery.Filter.AddColumn(database.Tables.LibraryItem.Column("FileName")); })); query.Output.AddParameters(database.Tables.PlaylistItem.Columns.Except(database.Tables.PlaylistItem.PrimaryKeys.Concat(database.Tables.PlaylistItem.Column("LibraryItem_Id")))); return(database.CreateCommand(query.Build(), DatabaseCommandFlags.NoCache, transaction)); }
public void InitializeDatabase(IDatabaseComponent database) { using (var transaction = database.BeginTransaction()) { var set = database.Set <PlaylistColumn>(transaction); set.Add(new PlaylistColumn() { Name = "Rating", Type = PlaylistColumnType.Plugin, Sequence = 100, Plugin = typeof(RatingBehaviour).AssemblyQualifiedName, Enabled = false }); transaction.Commit(); } }
protected virtual IReportRow GetRow(IDatabaseComponent database, LibraryRoot libraryRoot, ITransactionSource transaction) { var table = database.Tables.LibraryItem; var builder = database.QueryFactory.Build(); builder.Output.AddFunction(QueryFunction.Count, builder.Output.CreateOperator(QueryOperator.Star)); builder.Source.AddTable(table); builder.Filter.Add().With(binary => { binary.Left = binary.CreateColumn(table.Column("DirectoryName")); binary.Operator = binary.CreateOperator(QueryOperator.Match); binary.Right = binary.CreateConstant(libraryRoot.DirectoryName + "%"); }); var count = database.ExecuteScalar <long>(builder.Build(), transaction); return(new ReportRow(libraryRoot.DirectoryName, count)); }
public void InitializeDatabase(IDatabaseComponent database, DatabaseInitializeType type) { //IMPORTANT: When editing this function remember to change the checksum. if (!type.HasFlag(DatabaseInitializeType.MetaData)) { return; } using (var transaction = database.BeginTransaction(database.PreferredIsolationLevel)) { var set = database.Set <MetaDataProvider>(transaction); set.Clear(); //No default data, yet. if (transaction.HasTransaction) { transaction.Commit(); } } }
public LoginUserService(ILocalConfiguration localConfiguration, IHardwareService hardwareService, IOrganizationService organizationService, IUserManageService userManageService, ICardProcess cardProcess, ISignalProcess signalProcess, IDatabaseComponent databaseComponent, IEventAggregator eventAggregator, IRegionManager regionManager) { _localConfiguration = localConfiguration; _hardwareService = hardwareService; _organizationService = organizationService; _userManageService = userManageService; _cardProcess = cardProcess; _signalProcess = signalProcess; _databaseComponent = databaseComponent; _eventAggregator = eventAggregator; _regionManager = regionManager; MenuManageList = new MenuManageList(); ExceptionModel = new ObservableCollection <ExceptionModel>(); CustomSystemException = new ObservableCollection <T1_SystemEvent>(); _eventAggregator.GetEvent <ThrowExceptionEvent>().Subscribe(ManageException, ThreadOption.UIThread); }
public static Task RemoveHierarchies(IDatabaseComponent database, LibraryHierarchy libraryHierarchy, LibraryItemStatus?status, ITransactionSource transaction) { return(database.ExecuteAsync(database.Queries.RemoveLibraryHierarchyItems, (parameters, phase) => { switch (phase) { case DatabaseParameterPhase.Fetch: if (libraryHierarchy != null) { parameters["libraryHierarchyId"] = libraryHierarchy.Id; } if (status.HasValue) { parameters["status"] = status; } break; } }, transaction)); }
private async void Win_Parachanged(LoginInfo logininfo) { _databaseComponent = ServiceLocator.Current.GetInstance <IDatabaseComponent>(); if (logininfo.UserName == "superadmin" && logininfo.Password == "superadmin") { loginSucceed = true; loginWin.Close(); } else if (await _databaseComponent.UserLogin(logininfo.ServerInfo.IP, logininfo.UserName, logininfo.Password) != null) { loginSucceed = true; loginWin.Close(); } else { logininfo.RrrorInformation = (string)Application.Current.Resources["strUserError"]; } }