From ca273270cd55e594c472566ba9a351b6dcaaa3c6 Mon Sep 17 00:00:00 2001
From: Fibinger Ádám <adam.fibinger@wup.hu>
Date: Wed, 20 Feb 2019 18:51:23 +0100
Subject: [PATCH] Fullly working mock version (Full CRUD can be tested)

---
 src/main/java/hu/unr/fiber/cardapi/Card.java |   26 +++++++++++++++++++++++++-
 1 files changed, 25 insertions(+), 1 deletions(-)

diff --git a/src/main/java/hu/unr/fiber/cardapi/Card.java b/src/main/java/hu/unr/fiber/cardapi/Card.java
index eb30103..56d54bd 100644
--- a/src/main/java/hu/unr/fiber/cardapi/Card.java
+++ b/src/main/java/hu/unr/fiber/cardapi/Card.java
@@ -1,8 +1,12 @@
 package hu.unr.fiber.cardapi;
 
+import java.util.Objects;
+
 public class Card {
-    private long id;
+    public static final long INVALID_ID = 0;
+    private long id = INVALID_ID;
     private String name;
+    //FIXME: @Pattern([0-9]+)
     private String number;
     private String cardHolder;
 
@@ -19,6 +23,10 @@
 
     public long getId() {
         return id;
+    }
+
+    public boolean validId() {
+        return (this.getId() != Card.INVALID_ID);
     }
 
     public void setId(long id) {
@@ -48,4 +56,20 @@
     public void setCardHolder(String cardHolder) {
         this.cardHolder = cardHolder;
     }
+
+    public boolean equals(Object o) {
+        if (this == o) return true;
+        if (o == null || getClass() != o.getClass()) return false;
+        Card card = (Card) o;
+        return id == card.id &&
+                name.equals(card.name) &&
+                number.equals(card.number) &&
+                Objects.equals(cardHolder, card.cardHolder);
+    }
+
+    public void update(Card otherCard) {
+        this.setName(otherCard.getName());
+        this.setNumber(otherCard.getNumber());
+        this.setCardHolder(otherCard.getCardHolder());
+    }
 }

--
Gitblit v1.8.0