2013-04-09 2 views
0

Я работаю над программой, которая использует XStream для записи в XML. В его нынешнем виде у меня есть только один класс, который реализует Конвертер. Этот единственный конвертер принимает мою полную конфигурацию, которая является HashMap в своем корне, а значение каждого ключа является новым экземпляром класса VMwareServer, который, в свою очередь, имеет HashMap, где значение ключа является новым экземпляром класса VMwareVirtualMachine. Каждый из соответствующих классов имеет методы настройки и получения таких вещей, как IP address и port number.Должен ли я разделить мой конвертер XStream на класс?

Что мне интересно, если это правильный способ реализовать XStream-конвертер, или мне нужно создать отдельный конвертер, чтобы преобразовать каждый класс в XML самостоятельно?

Я могу показать код, если есть вопросы о том, что я имею в виду.

+0

Что вы делаете в конвертере? Xstream может глубоко объединить любой объект без какого-либо конвертера. –

+0

В основном я использую конвертер для переформатирования вывода в немного более «симпатичную» форму. Причина, по которой я использую конвертер, заключается в том, что некоторые объекты из java перемещаются, чтобы сделать вещи организованными. – ianc1215

+0

У вас должен быть конвертер на класс. –

ответ

0

Это несколько спорно, но я бы поспорил за то, что отдельный преобразователь для каждого класса. Это имеет несколько преимуществ: если позже вам нужно вернуть подмножество полного представления, вы сможете легко разложить структуру вдоль строк на основе классов (возможно, например, чтобы ограничить информацию разрешениями). Если вам нужно возвращать несколько разных представлений в разных контекстах, вы можете сделать это поэтапно, а не дублировать всю презентационную логику в своем монолитном классе.

+0

Да, вот что я подумал. Есть некоторые случаи, когда в зависимости от определенных значений я не создаю некоторые части файла XML. – ianc1215

+0

Ну, у меня есть git repo, я думаю, это то, что было предназначено для ... – ianc1215

Смежные вопросы