Class XmlDataImporter
- java.lang.Object
-
- org.apache.activemq.artemis.cli.commands.ActionAbstract
-
- org.apache.activemq.artemis.cli.commands.InputAbstract
-
- org.apache.activemq.artemis.cli.commands.messages.ConnectionConfigurationAbtract
-
- org.apache.activemq.artemis.cli.commands.tools.xml.XmlDataImporter
-
public final class XmlDataImporter extends ConnectionConfigurationAbtract
Read XML output fromorg.apache.activemq.artemis.core.persistence.impl.journal.XmlDataExporter, create a core session, and send the messages to a running instance of ActiveMQ Artemis. It uses the StAXjavax.xml.stream.XMLStreamReaderfor speed and simplicity.
-
-
Field Summary
Fields Modifier and Type Field Description intcommitIntervalStringhostDeprecated, for removal: This API element is subject to removal in a future version.StringinputbooleanlegacyPrefixesintportDeprecated, for removal: This API element is subject to removal in a future version.booleansortbooleantransactional-
Fields inherited from class org.apache.activemq.artemis.cli.commands.messages.ConnectionConfigurationAbtract
acceptor, brokerURL, CONNECTION_INFORMATION, password, silent, user
-
Fields inherited from class org.apache.activemq.artemis.cli.commands.ActionAbstract
DEFAULT_BROKER_ACCEPTOR, DEFAULT_BROKER_URL, verbose
-
-
Constructor Summary
Constructors Constructor Description XmlDataImporter()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Objectexecute(ActionContext context)voidprocess(InputStream inputStream, String host, int port)voidprocess(InputStream inputStream, ClientSession session)This is the normal constructor for programmatic access to theorg.apache.activemq.artemis.core.persistence.impl.journal.XmlDataImporterif the session passed in uses auto-commit for sends.voidprocess(InputStream inputStream, ClientSession session, ClientSession managementSession)This is the constructor to use if you wish to import all messages transactionally.voidprocess(String inputFileName, String host, int port)voidvalidate(InputStream inputStream)voidvalidate(String fileName)-
Methods inherited from class org.apache.activemq.artemis.cli.commands.messages.ConnectionConfigurationAbtract
getAcceptor, getBrokerURL, getPassword, getUser, inputBrokerURL, inputPassword, inputUser, recoverConnectionInformation, saveConnectionInfo, setAcceptor, setBrokerURL, setPassword, setUser
-
Methods inherited from class org.apache.activemq.artemis.cli.commands.InputAbstract
enableInput, input, input, inputBoolean, inputInteger, inputPassword, isSilentInput, setSilentInput
-
Methods inherited from class org.apache.activemq.artemis.cli.commands.ActionAbstract
done, getActionContext, getBrokerConfiguration, getBrokerEtc, getBrokerHome, getBrokerInstance, getBrokerURIInstance, getBrokerURLInstance, isVerbose, run, setHomeValues
-
-
-
-
Field Detail
-
host
@Deprecated(forRemoval=true) public String host
Deprecated, for removal: This API element is subject to removal in a future version.
-
port
@Deprecated(forRemoval=true) public int port
Deprecated, for removal: This API element is subject to removal in a future version.
-
transactional
public boolean transactional
-
commitInterval
public int commitInterval
-
input
public String input
-
sort
public boolean sort
-
legacyPrefixes
public boolean legacyPrefixes
-
-
Method Detail
-
execute
public Object execute(ActionContext context) throws Exception
- Specified by:
executein interfaceAction- Overrides:
executein classConnectionConfigurationAbtract- Throws:
Exception
-
process
public void process(String inputFileName, String host, int port) throws Exception
- Throws:
Exception
-
process
public void process(InputStream inputStream, ClientSession session) throws Exception
This is the normal constructor for programmatic access to theorg.apache.activemq.artemis.core.persistence.impl.journal.XmlDataImporterif the session passed in uses auto-commit for sends.
If the session needs to be transactional then use the constructor which takes 2 sessions.- Parameters:
inputStream- the stream from which to read the XML for importsession- used for sending messages, must use auto-commit for sends- Throws:
Exception
-
process
public void process(InputStream inputStream, ClientSession session, ClientSession managementSession) throws Exception
This is the constructor to use if you wish to import all messages transactionally.
Pass in a session which doesn't use auto-commit for sends, and one that does (for management operations necessary during import).- Parameters:
inputStream- the stream from which to read the XML for importsession- used for sending messages, doesn't need to auto-commit sendsmanagementSession- used for management queries, must use auto-commit for sends- Throws:
Exception
-
process
public void process(InputStream inputStream, String host, int port) throws Exception
- Throws:
Exception
-
validate
public void validate(InputStream inputStream) throws Exception
- Throws:
Exception
-
-