parent
488fad44a1
commit
2e2c0f74c2
6 changed files with 127 additions and 0 deletions
@ -0,0 +1,21 @@ |
||||
// Author: Gockner, Simon |
||||
// Created: 2020-09-18 |
||||
// Copyright(c) 2020 SimonG. All Rights Reserved. |
||||
|
||||
using System.Collections.Generic; |
||||
using GBase.Api; |
||||
using GBase.Attributes; |
||||
|
||||
namespace Test.GBase.GBaseIntegrationTest |
||||
{ |
||||
[GBaseTable] |
||||
public class Group : NotifyGBaseEntryChanged, IGroup |
||||
{ |
||||
public Group() |
||||
{ |
||||
Items = new List<IItem>(); |
||||
} |
||||
|
||||
public List<IItem> Items { get; } |
||||
} |
||||
} |
||||
@ -0,0 +1,14 @@ |
||||
// Author: Gockner, Simon |
||||
// Created: 2020-09-18 |
||||
// Copyright(c) 2020 SimonG. All Rights Reserved. |
||||
|
||||
using System.Collections.Generic; |
||||
using GBase.Api; |
||||
|
||||
namespace Test.GBase.GBaseIntegrationTest |
||||
{ |
||||
public interface IGroup : INotifyGBaseEntryChanged |
||||
{ |
||||
List<IItem> Items { get; } |
||||
} |
||||
} |
||||
@ -0,0 +1,13 @@ |
||||
// Author: Gockner, Simon |
||||
// Created: 2020-09-18 |
||||
// Copyright(c) 2020 SimonG. All Rights Reserved. |
||||
|
||||
using GBase.Api; |
||||
|
||||
namespace Test.GBase.GBaseIntegrationTest |
||||
{ |
||||
public interface IItem : INotifyGBaseEntryChanged |
||||
{ |
||||
|
||||
} |
||||
} |
||||
@ -0,0 +1,15 @@ |
||||
// Author: Gockner, Simon |
||||
// Created: 2020-09-18 |
||||
// Copyright(c) 2020 SimonG. All Rights Reserved. |
||||
|
||||
using GBase.Api; |
||||
using GBase.Attributes; |
||||
|
||||
namespace Test.GBase.GBaseIntegrationTest |
||||
{ |
||||
[GBaseTable] |
||||
public class Item : NotifyGBaseEntryChanged, IItem |
||||
{ |
||||
|
||||
} |
||||
} |
||||
@ -0,0 +1,51 @@ |
||||
// Author: Gockner, Simon |
||||
// Created: 2020-09-18 |
||||
// Copyright(c) 2020 SimonG. All Rights Reserved. |
||||
|
||||
using System.Collections.Generic; |
||||
using System.Reflection; |
||||
using System.Threading; |
||||
using System.Threading.Tasks; |
||||
using GBase.Factories; |
||||
using GBase.Interfaces; |
||||
|
||||
namespace Test.GBase.GBaseIntegrationTest |
||||
{ |
||||
public class Model |
||||
{ |
||||
private readonly IGBase _gBase; |
||||
|
||||
public Model(IGBaseFactory gBaseFactory) |
||||
{ |
||||
_gBase = gBaseFactory.Create(new Settings()); |
||||
Items = new List<IItem>(); |
||||
Groups = new List<IGroup>(); |
||||
} |
||||
|
||||
public List<IItem> Items { get; private set; } |
||||
public List<IGroup> Groups { get; private set; } |
||||
|
||||
public async Task Initialize(CancellationToken cancellationToken) |
||||
{ |
||||
await _gBase.Init("DB", Assembly.GetExecutingAssembly(), cancellationToken); |
||||
|
||||
IGBaseTable<IItem> itemsTable = _gBase.GetTable<IItem>(); |
||||
Items = itemsTable.Entries; |
||||
|
||||
IGBaseTable<IGroup> groupsTable = _gBase.GetTable<IGroup>(); |
||||
Groups = groupsTable.Entries; |
||||
} |
||||
|
||||
public void AddItem(IItem item) |
||||
{ |
||||
Items.Add(item); |
||||
_gBase.AddEntry(item); |
||||
} |
||||
|
||||
public void AddGroup(IGroup group) |
||||
{ |
||||
Groups.Add(group); |
||||
_gBase.AddEntry(@group); |
||||
} |
||||
} |
||||
} |
||||
@ -0,0 +1,13 @@ |
||||
// Author: Gockner, Simon |
||||
// Created: 2020-09-18 |
||||
// Copyright(c) 2020 SimonG. All Rights Reserved. |
||||
|
||||
using GBase.Interfaces.Settings; |
||||
|
||||
namespace Test.GBase.GBaseIntegrationTest |
||||
{ |
||||
public class Settings : IGBaseSettings |
||||
{ |
||||
public string DatabasePath => ""; |
||||
} |
||||
} |
||||
Loading…
Reference in new issue