summaryrefslogtreecommitdiff
path: root/DSACore/Models
diff options
context:
space:
mode:
authorTrueDoctor <d-kobert@web.de>2018-10-01 22:20:36 +0200
committerTrueDoctor <d-kobert@web.de>2018-10-01 22:20:36 +0200
commitb7ef3c860375baea7b5db95940519ce0746b6ecc (patch)
tree270b9f6ec1c58b153037738f6c6b2aa83205d9fc /DSACore/Models
parenta5a5d368cddd6e8a15298002ccb3b10c90a33980 (diff)
added Command Response Handling
Diffstat (limited to 'DSACore/Models')
-rw-r--r--DSACore/Models/Database/DatabaseChar.cs16
-rw-r--r--DSACore/Models/Database/GeneralSpell.cs4
-rw-r--r--DSACore/Models/Database/Talent.cs9
-rw-r--r--DSACore/Models/Network/CommandResponse.cs31
-rw-r--r--DSACore/Models/Network/Group.cs25
5 files changed, 75 insertions, 10 deletions
diff --git a/DSACore/Models/Database/DatabaseChar.cs b/DSACore/Models/Database/DatabaseChar.cs
index 03383b8..9cd865f 100644
--- a/DSACore/Models/Database/DatabaseChar.cs
+++ b/DSACore/Models/Database/DatabaseChar.cs
@@ -8,6 +8,22 @@ namespace DSACore.Models.Database
{
public class DatabaseChar
{
+ public DatabaseChar()
+ {
+ }
+
+ public DatabaseChar(int id, string name, string rasse, List<Field> skills, List<Field> talents, List<Advantage> advantages, List<CharSpell> spells, List<WeaponTalent> weaponTalents)
+ {
+ Id = id;
+ Name = name ?? throw new ArgumentNullException(nameof(name));
+ Rasse = rasse ?? throw new ArgumentNullException(nameof(rasse));
+ Skills = skills ?? throw new ArgumentNullException(nameof(skills));
+ Talents = talents ?? throw new ArgumentNullException(nameof(talents));
+ Advantages = advantages ?? throw new ArgumentNullException(nameof(advantages));
+ Spells = spells ?? throw new ArgumentNullException(nameof(spells));
+ WeaponTalents = weaponTalents ?? throw new ArgumentNullException(nameof(weaponTalents));
+ }
+
public int Id { get; set; }
public string Name { get; set; }
diff --git a/DSACore/Models/Database/GeneralSpell.cs b/DSACore/Models/Database/GeneralSpell.cs
index 6a6e94c..f53081e 100644
--- a/DSACore/Models/Database/GeneralSpell.cs
+++ b/DSACore/Models/Database/GeneralSpell.cs
@@ -17,5 +17,9 @@ namespace DSACore.Models.Database
public GeneralSpell(string name, string roll) : base(name, roll)
{
}
+
+ public GeneralSpell()
+ {
+ }
}
}
diff --git a/DSACore/Models/Database/Talent.cs b/DSACore/Models/Database/Talent.cs
index 117d0f7..aca65a4 100644
--- a/DSACore/Models/Database/Talent.cs
+++ b/DSACore/Models/Database/Talent.cs
@@ -7,6 +7,15 @@ namespace DSACore.Models.Database
{
public class Talent
{
+ public Talent()
+ {
+ }
+
+ public Talent(string name)
+ {
+ Name = name ?? throw new ArgumentNullException(nameof(name));
+ }
+
public Talent(string name, String roll)
{
Name = name ?? throw new ArgumentNullException(nameof(name));
diff --git a/DSACore/Models/Network/CommandResponse.cs b/DSACore/Models/Network/CommandResponse.cs
new file mode 100644
index 0000000..ed4b7d0
--- /dev/null
+++ b/DSACore/Models/Network/CommandResponse.cs
@@ -0,0 +1,31 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Threading.Tasks;
+
+namespace DSACore.Models.Network
+{
+ public class CommandResponse
+ {
+ public CommandResponse(string message, ResponseType responseType= ResponseType.Broadcast)
+ {
+ this.message = message ?? throw new ArgumentNullException(nameof(message));
+ ResponseType = responseType;
+ }
+
+ public string message { get; private set; }
+ public ResponseType ResponseType { get; private set;}
+
+ public override string ToString()
+ {
+ return message;
+ }
+ }
+
+ public enum ResponseType
+ {
+ Broadcast,
+ Caller,
+ Error
+ }
+}
diff --git a/DSACore/Models/Network/Group.cs b/DSACore/Models/Network/Group.cs
index 6e62dc8..76c3efb 100644
--- a/DSACore/Models/Network/Group.cs
+++ b/DSACore/Models/Network/Group.cs
@@ -7,18 +7,15 @@ namespace DSACore.Models.Network
{
public class Group
{
- private int _online;
-
public Group(string name, string password)
{
Name = name;
Password = password;
}
- public Group(string name, int userCount)
+ public Group(string name, int userOnline)
{
Name = name ?? throw new ArgumentNullException(nameof(name));
- UserCount = userCount;
}
public string Name { get; set; }
@@ -27,18 +24,26 @@ namespace DSACore.Models.Network
public int UserCount
{
- get { return _online; RefreshOnline();}
- set { _online = value; RefreshOnline();}
+ get { return Users.Count; }
}
- private void RefreshOnline()
+ public SendGroup SendGroup()
{
- _online = Users.Count;
+ return new SendGroup( Name, UserCount);
}
+ }
- public Group SendGroup()
+ public class SendGroup
+ {
+ public SendGroup(string name, int userCount)
{
- return new Group( Name, UserCount);
+ Name = name ?? throw new ArgumentNullException(nameof(name));
+ UserCount = userCount;
}
+
+ public string Name { get; set; }
+
+ public int UserCount { get; set; }
+
}
}