package de.uni_passau.fim.pkjab.util; public class Subscription { public static final Subscription NONE = new Subscription("keines"); public static final Subscription BOTH = new Subscription("beide"); public static final Subscription TO = new Subscription("nach"); public static final Subscription FROM = new Subscription("von"); private final String humanName; private Subscription(final String humanName) { this.humanName = humanName; } public String getHumanName() { return humanName; } public String toString() { return super.toString().toLowerCase(); } public static Subscription valueOf(String subscription) { subscription = subscription.toUpperCase(); if (subscription.equals("NONE")) { return NONE; } else if (subscription.equals("BOTH")) { return BOTH; } else if (subscription.equals("TO")) { return TO; } else if (subscription.equals("FROM")) { return FROM; } else { return null; } } public Subscription removeTo() { if (this == BOTH || this == FROM) { return FROM; } else if (this == TO || this == NONE) { return NONE; } else { return null; } } public Subscription addTo() { if (this == BOTH || this == FROM) { return BOTH; } else if (this == TO || this == NONE) { return TO; } else { return null; } } public Subscription removeFrom() { if (this == BOTH || this == TO) { return TO; } else if (this == FROM || this == NONE) { return NONE; } else { return null; } } public Subscription addFrom() { if (this == BOTH || this == TO) { return BOTH; } else if (this == FROM || this == NONE) { return NONE; } else { return null; } } }