Я работаю с Mule Studio в этом, и я действительно задавался вопросом о возможности добавления выпадающего списка с «пользовательским» строковым именем. Это относится к именам MIME-типов (ContentTypes). (То есть: текст/CSS, текст/JavaScript, и так)Как создать типы перечислений строк без переопределения метода toString, который будет использоваться в Mule Studio?
Сделана структура, как это:
public enum HttpContentType {
TEXT_PLAIN
{
public String toString() {
return "text/plain";
}
},
TEXT_CSS
{
public String toString() {
return "text/css";
}
},
TEXT_JS
{
public String toString() {
return "text/javascript";
}
},
TEXT_XML
{
public String toString() {
return "text/xml";
}
},
};
Чтобы потом можно использовать, как это как Настраиваемый атрибут:
/**
* Connection Content Types
*/
@Configurable
@Placement(order=1,group="Configuration",tab="HTTP Configuration")
private HttpContentType contentType;
Но конечно, что, читая это из Mule Studio, это будет раскрывающийся список с такими именами, как: TEXT_CSS
, TEXT_XML
, TEXT_JAVASCRIPT
(http://puu.sh/3vLbd.png) и поэтому вместо text/css
, text/xml
, text/javascript
.
Как я могу достичь этого результата?
Это, безусловно, самый лучший способ. Тогда вам нужно только переопределить toString() и вернуть значение this.value. –
Да, это сработало бы я, но Mule этого не возьмет. Не знаю, почему он берет имена перечислений и не заботится о методах в нем. – msqar
@msqar. Ну, я понятия не имею о поведении на Муле. –