public class XMLConversionService extends Service implements csbase.remote.XMLConversionServiceInterface
XMLConversionService implementa o serviço de conversão
de arquivos XML. Este serviço é usado para converter arquivos XML para
torná-los compatíveis com a última versão do DTD. Isto é feito usando-se
conversores XML
IMPORTANTE: atualmente somos forçados a sobrescrever o arquivo
original (é possível antes fazer um backup) pois o CSBase não permite
transmitirmos dados diretamente por channel do servidor para o cliente sem
que este conteúdo esteja gravado em um ServerProjectFile.
Idealmente o resultado da conversão seria transferido diretamente do documento DOM em memória para o cliente via rede, sem a necessidade de gravá-lo previamente como um arquivo XML. Com isto o cliente poderia ler o arquivo diretamente da rede, marcá-lo como "sujo" e deixar a gravação por conta do usuário, no cliente.
| Constructor and Description |
|---|
XMLConversionService()
Cria uma instância do serviço.
|
| Modifier and Type | Method and Description |
|---|---|
protected void |
append(File src,
OutputStream outputStream)
Grava o conteúdo de um arquivo em um stream de saída.
|
tecgraf.javautils.xml.conversion.XMLConverter.XMLConversionStatus |
convertXMLToFile(Object projectId,
String[] clientPath,
boolean validate,
String dtdPrefix,
Class<? extends tecgraf.javautils.xml.conversion.XMLConverter> clazz) |
String |
convertXMLToString(Object projectId,
String[] clientPath,
boolean validate,
String dtdPrefix,
Class<? extends tecgraf.javautils.xml.conversion.XMLConverter> clazz) |
static void |
createService()
Cria a instância do serviço.
|
static XMLConversionService |
getInstance()
Retorna a instância do serviço.
|
protected String |
getXMLEndMarker()
Retorna o marcador da tag final do arquivo XML.
|
protected boolean |
has2Update(Object arg,
Object event) |
void |
initService()
Método abstrato de inicialização do serviço.
|
protected void |
postConvert(Object projectId,
String[] clientPath,
String dtdPrefix,
OutputStream outputStream,
String xmlData,
tecgraf.javautils.xml.conversion.XMLConverter.XMLConversionStatus status)
Método com as ações de pós conversão.
|
protected void |
preConvert(Object projectId,
String[] clientPath,
String dtdPrefix,
String xmlData)
Executa as ações antes da conversão
|
void |
shutdownService()
Método abstrato de término do serviço
|
getBooleanProperty, getDefaultLocale, getDoubleProperty, getExternalPropertyFile, getFormattedString, getFormattedString, getInitializationDependencies, getInstance, getIntProperty, getKey, getLongProperty, getName, getOptionalString, getOptionalString, getOSPropertyPath, getSenderName, getServices, getString, getString, getStringListProperty, getStringProperty, getSystemId, getThreadLocale, getUser, getUserPermission, hasProperty, incrCounter, isActive, isEnabled, isInternalServerRequest, isLoggingNotifications, isPropertyNull, logNotification, setEnabled, setKey, setSystemId, setUserId, setUserLocalehandleException, handleFatalErroraddObserver, countObservers, deleteObserver, deleteObserver, deleteObservers, has2update, notifyObserverspublic XMLConversionService()
throws ServerException
ServerException - se houver algum erro na criação do serviçopublic void initService()
throws ServerException
initService in class ServiceServerException - em caso de falhapublic void shutdownService()
throws ServerException
shutdownService in class ServiceServerException - em caso de falha.protected boolean has2Update(Object arg, Object event)
has2Update in class csbase.remote.RemoteObjectObservablepublic tecgraf.javautils.xml.conversion.XMLConverter.XMLConversionStatus convertXMLToFile(Object projectId, String[] clientPath, boolean validate, String dtdPrefix, Class<? extends tecgraf.javautils.xml.conversion.XMLConverter> clazz) throws RemoteException
convertXMLToFile in interface csbase.remote.XMLConversionServiceInterfaceRemoteExceptionprotected void postConvert(Object projectId, String[] clientPath, String dtdPrefix, OutputStream outputStream, String xmlData, tecgraf.javautils.xml.conversion.XMLConverter.XMLConversionStatus status)
projectId - - identificador do projetoclientPath - - path relativo para o arquivo no projetodtdPrefix - - string que será prefixada na declaração do DTD. Pode ser
null caso não se deseje um prefixo específicooutputStream - - stream do arquivo convertidoxmlData - - conteúdo do arquivo xmlstatus - - o status da conversãoprotected void preConvert(Object projectId, String[] clientPath, String dtdPrefix, String xmlData)
projectId - - identificador do projetoclientPath - - path relativo para o arquivo no projetodtdPrefix - - string que será prefixada na declaração do DTD. Pode ser
null caso não se deseje um prefixo específicoxmlData - - conteúdo do arquivo xmlprotected String getXMLEndMarker()
public String convertXMLToString(Object projectId, String[] clientPath, boolean validate, String dtdPrefix, Class<? extends tecgraf.javautils.xml.conversion.XMLConverter> clazz) throws RemoteException
convertXMLToString in interface csbase.remote.XMLConversionServiceInterfaceRemoteExceptionprotected void append(File src, OutputStream outputStream) throws tecgraf.javautils.xml.conversion.exception.XMLConversionException
src - origem dos dadosoutputStream - stream de saídatecgraf.javautils.xml.conversion.exception.XMLConversionException - em caso de falha de conversão.public static XMLConversionService getInstance()
public static void createService()
throws ServerException
ServerException - em caso de falha de criação do serviço.Copyright © 2019. All rights reserved.