Interface DynamicCodeService
@MTOM(enabled=true)
public interface DynamicCodeService
-
Method Summary
Modifier and TypeMethodDescriptionКомпилирует исходник с заданным именем класса.deleteClasses(String... classNames) Удаляет заданные исходники.deleteFiles(String... fileNames) Нужен для удаления не java классов.voiddeleteTepmlate(int id) по переданному id удаляет пользовательский шаблон из таблицыgenerateCode(GeneratorOptions options) Генерирует код-болванку для заданного имени класса-интерфейсаgetClassNamesByInterface(String ifaceName) Возвращает имена загруженных классов, имплементирующих заданный интерфейс.Возвращает список всех динамических классов.getDynamicClassesByInterface(String ifaceName) Возвращает загруженные классы, имплементирующие заданный интерфейс.voidgetDynJar(boolean common, jakarta.xml.ws.Holder<jakarta.activation.DataHandler> data) Получить jar, состояющую из dyn-классов.Возвращает исходный код класса.getSourceData(String className) Возвращает код классаru.bitel.bgbilling.kernel.dynamic.common.templates.CustomTemplategetTemplateById(int id) по id возвращает пользовательский шаблон, либо null, если не был найден шаблон с таким idSearchResult<ru.bitel.bgbilling.kernel.dynamic.common.templates.CustomTemplate>getTemplateList(Page page) Возвращает список пользовательских шаблонов из таблицыbooleanisClassExists(String className) Проверяет, существует ли уже такое имя класса.Инициирует перекомпиляцию всех исходников.Запускает исходник с заданным именем класса.voidupdateSource(String className, String source) Сохранение исходного кода заданного класса.voidupdateTemplate(ru.bitel.bgbilling.kernel.dynamic.common.templates.CustomTemplate customTemplate) Обновляет пользовательский шаблон
-
Method Details
-
updateSource
Сохранение исходного кода заданного класса.- Parameters:
className- имя классаcode- исходный код- Throws:
BGExceptionException
-
getSource
Возвращает исходный код класса.- Parameters:
className- имя класса- Returns:
- исходный код
- Throws:
BGExceptionException
-
getSourceData
Возвращает код класса- Parameters:
className- имя класса- Returns:
- класс в виде масива байт
- Throws:
BGExceptionException
-
getDynamicClasses
Возвращает список всех динамических классов.- Returns:
- Throws:
BGExceptionException
-
recompileAll
Инициирует перекомпиляцию всех исходников. Приводит к заполнению таблицы классов заново!- Returns:
- сообщения компилятора
- Throws:
BGExceptionException
-
getClassNamesByInterface
Возвращает имена загруженных классов, имплементирующих заданный интерфейс.- Parameters:
ifaceName- имя интерфейса- Returns:
- Throws:
BGExceptionException
-
getDynamicClassesByInterface
Возвращает загруженные классы, имплементирующие заданный интерфейс.- Parameters:
ifaceName- имя интерфейса- Returns:
- Throws:
BGExceptionException
-
compile
Компилирует исходник с заданным именем класса.- Parameters:
className-- Returns:
- сообщения компилятора
- Throws:
BGExceptionException
-
deleteClasses
Удаляет заданные исходники. Работа метода заключается в следующем:
1) исходники переименовываются в bak-файлы;
2) запускается полная перекомпиляция остальных исходников;
3) если произошла ошибка компиляции, то удаление исходников откатывается;
4) если ошибок нет, то
а) удаляются bak-файлы;
б) удаляются записи об этих классов из таблиц в БД.- Parameters:
classNames- имя классов для удаления- Returns:
- сообщения компилятора
- Throws:
BGExceptionException
-
deleteFiles
Нужен для удаления не java классов. Удаляет просто файлы, не java классы.- Throws:
Exception
-
generateCode
Генерирует код-болванку для заданного имени класса-интерфейса- Parameters:
iface- имя класса-интерфейсаfullClassName- имя создаваемого классаdefaultImports- имена классов, импорты которых следует прописать независимо от их необходимости в коде- Returns:
- Throws:
BGExceptionException
-
isClassExists
Проверяет, существует ли уже такое имя класса.- Parameters:
className- имя класса- Returns:
- Throws:
BGExceptionException
-
run
Запускает исходник с заданным именем класса.- Parameters:
className- имя классаparameters- параметры метода main- Returns:
- список строк сообщения
- Throws:
BGExceptionException
-
getDynJar
void getDynJar(boolean common, jakarta.xml.ws.Holder<jakarta.activation.DataHandler> data) throws Exception Получить jar, состояющую из dyn-классов.- Parameters:
common- если true, то пропускаются классы-имплементации web-сервисов.data-- Throws:
BGExceptionException
-
updateTemplate
void updateTemplate(ru.bitel.bgbilling.kernel.dynamic.common.templates.CustomTemplate customTemplate) throws Exception Обновляет пользовательский шаблон- Parameters:
customTemplate- - шаблон- Throws:
BGExceptionException
-
getTemplateById
ru.bitel.bgbilling.kernel.dynamic.common.templates.CustomTemplate getTemplateById(int id) throws Exception по id возвращает пользовательский шаблон, либо null, если не был найден шаблон с таким id- Parameters:
id-- Returns:
- CustomTemplate
- Throws:
BGExceptionException
-
getTemplateList
SearchResult<ru.bitel.bgbilling.kernel.dynamic.common.templates.CustomTemplate> getTemplateList(Page page) throws Exception Возвращает список пользовательских шаблонов из таблицы- Returns:
- Throws:
BGExceptionException
-
deleteTepmlate
по переданному id удаляет пользовательский шаблон из таблицы- Parameters:
id-- Throws:
BGExceptionException
-