package be.dnsbelgium.rdap.sample.parser;
import be.dnsbelgium.rdap.sample.dto.Contact;
import be.dnsbelgium.rdap.sample.dto.DnsSecKey;
import be.dnsbelgium.rdap.sample.dto.SimpleContact;
public enum WhoisKeyBlock {
MAIN(),
DOMAIN(),
REGISTRAR(),
REGISTRANT(),
ADMIN(Contact.class),
TECH(Contact.class),
DNSSEC(),
DNSSECKEY(DnsSecKey.class, true),
HOST(),
SIMPLE_ADMIN(SimpleContact.class),
SIMPLE_TECH(SimpleContact.class);
private Class repeatClass = null;
private boolean hasIndexSuffix = false;
WhoisKeyBlock() {
}
WhoisKeyBlock(Class repeatClass) {
this.repeatClass = repeatClass;
}
WhoisKeyBlock(Class repeatClass, boolean hasIndexSuffix) {
this.repeatClass = repeatClass;
this.hasIndexSuffix = hasIndexSuffix;
}
public Class getRepeatClass() {
return repeatClass;
}
public boolean hasIndexSuffix() {
return hasIndexSuffix;
}
public boolean isRepeatable() {
return repeatClass != null;
}
}