В настоящее время Cygnus не поддерживает уведомления NGSIv2, поэтому вам нужно использовать конечную точку NGSIv1. Вы можете найти больше информации в этом разделе документации Cygnus и , а также в других .
Если бы я понимаю правильно, что требуется сделать, что-то вроде этого:
public abstract class DatabaseField {
private String fieldName;
private DatabaseField(String fieldName) {
this.fieldName = fieldName;
}
public String getFieldName() {
return fieldName;
}
}
Затем определите свое перечисление для расширения этого класса. Однако, к сожалению, перечисление не может расширить класс, но оно может реализовать интерфейс, таким образом, лучшее, которое можно сделать в данный момент, определяют интерфейс, который включает getFieldName () метод, и имейте всю реализацию перечислений этот интерфейс.
Однако это означает, что необходимо будет копировать реализацию этого метода (и любые другие) во всех перечислениях. Существуют некоторые предложения в этом вопросе о способах минимизировать это дублирование.
Все перечисления неявно расширяются java.lang.Enum
. Так как Java не поддерживает множественное наследование, перечисление не может расширить ничто больше.
Перечисления могут реализовать интерфейсы, но не расшириться, с тех пор при компиляции они переводят в java.lang. Перечисление.
Абстрактные перечисления потенциально очень полезны (и в настоящее время не позволенные). Но предложение и прототип существуют, если требуется лоббировать кого-то в Sun для добавления его:
http://freddy33.blogspot.com/2007/11/abstract-enum-ricky-carlson-way.html
Sun RFE:
Ручное ремесло перечисление в механизме, подобном определенному в Эффективном Java Josh Bloch.
Я добавил бы, что, если необходимо "расширить" перечисление, затем возможно, перечисление не является конструкцией, которая Вы после. Они предназначены, чтобы быть статическими константами, по моему скромному мнению.
Для возврата к предварительному Java 5 дней смотрите на Объект 21, Глава 5, Эффективный Java Josh Bloch. Он говорит о расширяющихся "перечислениях" путем добавления значений, но возможно Вы могли использовать некоторые методы для добавления нового метода?