palio.modules
Class Xml

java.lang.Object
  extended by palio.modules.core.Module
      extended by palio.modules.Xml
All Implemented Interfaces:
palio.modules.core.CurrentModuleDataKeys

public class Xml
extends palio.modules.core.Module

Funkcje modułu:

Moduł jest dostępny w każdej instancji jPalio.

Version:
1.4.1
Author:
Krzysztof Madyniak, Mateusz Gembarzewski

Field Summary
 
Fields inherited from interface palio.modules.core.CurrentModuleDataKeys
DESIGNER_ACTIONS_BUFFER, HTML_FORM_BUILDER, HTML_MAP_BUILDER, HTML_MENU_BUILDER, HTML_TOOLTIPS_BUFFER, ITEXT_DOCUMENT, MAIL_MESSAGE, XLS_DOCUMENT, XML_DOCUMENT
 
Constructor Summary
Xml(palio.Instance instance, java.util.Properties parameters)
           
 
Method Summary
 void addElement(java.lang.String name)
          Dodaje do dokumentu element o nazwie name (qName).
 void addElement(java.lang.String name, java.util.Map attributes)
          Dodaje do dokumentu element o nazwie name (qName) i podanych atrybutach.
 void addElement(java.lang.String name, java.util.Map attributes, palio.compiler.PalioCode innerCode)
          Dodaje do dokumentu element o nazwie name (qName) i podanych atrybutach.
 void addElement(java.lang.String name, java.util.Map attributes, java.lang.String innerText)
          Dodaje do dokumentu element o nazwie name (qName) wraz z wewnętrznym tekstem (pomiędzy tagiem rozpoczynającym a kończącym).
 void addElement(java.lang.String name, java.lang.Object[] attributes)
          d * Dodaje do dokumentu element o nazwie name (qName) i podanych atrybutach.
 void addElement(java.lang.String name, java.lang.Object[] attributes, palio.compiler.PalioCode innerCode)
          Dodaje do dokumentu element o nazwie name (qName) i podanych atrybutach.
 void addElement(java.lang.String name, java.lang.Object[] attributes, java.lang.String innerText)
          Dodaje do dokumentu element o nazwie name (qName) wraz z wewnętrznym tekstem (pomiędzy tagiem rozpoczynającym a kończącym).
 void addElement(java.lang.String name, palio.compiler.PalioCode innerCode)
          Dodaje do dokumentu element o nazwie name (qName).
 void addElement(java.lang.String name, java.lang.String innerText)
          Dodaje do dokumentu element o nazwie name (qName) wraz z wewnętrznym tekstem (pomiędzy tagiem rozpoczynającym a kończącym).
 void addText(java.lang.String text)
          Dodaje tekst do dokumentu.
 byte[] closeDocument()
          Zamyka aktualny dokument i zwraca jego zawartość.
 void createDocument()
          Tworzy dokument XML.
 void createDocument(java.util.Map properties)
          Tworzy dokument XML.
 void createDocument(java.lang.String encoding, java.lang.Boolean indent)
          Tworzy dokument XML.
 void createDocument(java.lang.String encoding, java.lang.Boolean indent, java.lang.String doctypeSystem, java.lang.String doctypePublic, java.lang.Boolean standalone)
          Tworzy dokument XML.
static java.util.LinkedList evaluateXPathAsNodesText(java.lang.String xml, java.lang.String expression)
          Wykonuje zapytanie XPath, zakłada że wynikiem będzie lista gałęzi i zwraca tekstową zawartość tych gałęzi.
static java.lang.String evaluateXPathExpression(java.lang.String xml, java.lang.String expression)
          Wykonuje zapytanie XPath i zwraca tekstowy wynik.
static java.lang.Object[] evaluateXPathExpressions(java.lang.String xml, java.lang.Object[] expressions)
          Wykonuje serię zapytań języka XPath na podanym dokumencie Xml i zwraca tablicę tekstowych wyników każdego z zapytań.
 java.lang.String getVersion()
          Returns the module version
 void parseDocument(java.lang.Long callbackObjectID, byte[] document, java.lang.String charset)
          Czyta dokument XML przy użyciu zdarzeniowego interfejsu SAX.
 void parseDocument(java.lang.Long callbackObjectID, java.lang.String document)
          Czyta dokument XML przy użyciu zdarzeniowego interfejsu SAX.
 void parseDocument(java.lang.String callbackObjectCode, byte[] document, java.lang.String charset)
          Czyta dokument XML przy użyciu zdarzeniowego interfejsu SAX.
 void parseDocument(java.lang.String callbackObjectCode, java.lang.String document)
          Czyta dokument XML przy użyciu zdarzeniowego interfejsu SAX.
static java.lang.String transform(java.lang.String xml, java.lang.String xsl)
          Dokonuje przekształcenia XSLT podanego Xml'a przy uzyciu podanego arkusza styli
static java.lang.String transform(java.lang.String xml, java.lang.String xsl, java.util.Map params, java.lang.String xslEncoding, java.lang.String outputEncoding)
          Dokonuje przekształcenia XSLT podanego Xml'a przy uzyciu podanego arkusza styli
 
Methods inherited from class palio.modules.core.Module
getConfigParam, getDescription, getModuleTranslation
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Xml

public Xml(palio.Instance instance,
           java.util.Properties parameters)
Method Detail

getVersion

public java.lang.String getVersion()
Description copied from class: palio.modules.core.Module
Returns the module version

Specified by:
getVersion in class palio.modules.core.Module

createDocument

public void createDocument()
                    throws org.xml.sax.SAXException,
                           palio.PalioException
Tworzy dokument XML. W danym wywołaniu można mieć tylko jeden aktywny dokument. Każdy stworzony dokument należy bezwzględnie zamknąć używając metody closeDocument().

Throws:
org.xml.sax.SAXException
palio.PalioException

createDocument

public void createDocument(java.util.Map properties)
                    throws org.xml.sax.SAXException,
                           palio.PalioException
Tworzy dokument XML. W danym wywołaniu można mieć tylko jeden aktywny dokument. Każdy stworzony dokument należy bezwzględnie zamknąć używając metody closeDocument().
Obsługiwane parametry:

Throws:
org.xml.sax.SAXException
palio.PalioException

createDocument

public void createDocument(java.lang.String encoding,
                           java.lang.Boolean indent)
                    throws org.xml.sax.SAXException,
                           palio.PalioException
Tworzy dokument XML. W danym wywołaniu można mieć tylko jeden aktywny dokument. Każdy stworzony dokument należy bezwzględnie zamknąć używając metody closeDocument().

Parameters:
encoding - kodowanie dokumentu, np: ISO-8859-2
indent - czy generować łamania linii w dokumencie
Throws:
org.xml.sax.SAXException
palio.PalioException

createDocument

public void createDocument(java.lang.String encoding,
                           java.lang.Boolean indent,
                           java.lang.String doctypeSystem,
                           java.lang.String doctypePublic,
                           java.lang.Boolean standalone)
                    throws org.xml.sax.SAXException,
                           palio.PalioException
Tworzy dokument XML. W danym wywołaniu można mieć tylko jeden aktywny dokument. Każdy stworzony dokument należy bezwzględnie zamknąć używając metody closeDocument().

Parameters:
encoding - kodowanie dokumentu, np: ISO-8859-2
indent - czy generować łamania linii w dokumencie
doctypeSystem - znacznik DOCTYPE
doctypePublic - znacznik DOCTYPE z atrybutem PUBLIC
standalone - znacznik STANDALONE
Throws:
org.xml.sax.SAXException
palio.PalioException

addElement

public void addElement(java.lang.String name)
                throws org.xml.sax.SAXException,
                       palio.PalioException
Dodaje do dokumentu element o nazwie name (qName).

Parameters:
name - nazwa elementu
Throws:
org.xml.sax.SAXException
palio.PalioException

addElement

public void addElement(java.lang.String name,
                       palio.compiler.PalioCode innerCode)
                throws org.xml.sax.SAXException,
                       palio.PalioException
Dodaje do dokumentu element o nazwie name (qName). W kodzie innerCode można wywoływać metody addText(String) lub różne warianty metody addElement(String).

Parameters:
name - nazwa elementu
innerCode - kod generujący wnętrze elementu
Throws:
org.xml.sax.SAXException
palio.PalioException

addElement

public void addElement(java.lang.String name,
                       java.lang.String innerText)
                throws org.xml.sax.SAXException
Dodaje do dokumentu element o nazwie name (qName) wraz z wewnętrznym tekstem (pomiędzy tagiem rozpoczynającym a kończącym).

Parameters:
name - nazwa elementu
innerText - tekst wrzucany do wnętrza elementu
Throws:
org.xml.sax.SAXException

addElement

public void addElement(java.lang.String name,
                       java.util.Map attributes)
                throws org.xml.sax.SAXException,
                       palio.PalioException
Dodaje do dokumentu element o nazwie name (qName) i podanych atrybutach.

Parameters:
name - nazwa elementu
attributes - zestaw atrybutów danego elementu
Throws:
org.xml.sax.SAXException
palio.PalioException

addElement

public void addElement(java.lang.String name,
                       java.lang.Object[] attributes)
                throws org.xml.sax.SAXException,
                       palio.PalioException
d * Dodaje do dokumentu element o nazwie name (qName) i podanych atrybutach.

Parameters:
name - nazwa elementu
attributes - tablica atrybutów danego elementu, np: [klucz1, wartość1, klucz2, wartość2, ...]
Throws:
org.xml.sax.SAXException
palio.PalioException

addElement

public void addElement(java.lang.String name,
                       java.util.Map attributes,
                       palio.compiler.PalioCode innerCode)
                throws org.xml.sax.SAXException,
                       palio.PalioException
Dodaje do dokumentu element o nazwie name (qName) i podanych atrybutach. W kodzie innerCode można wywoływać metody addText(String) lub różne warianty metody addElement(String).

Parameters:
name - nazwa elementu
attributes - zestaw atrybutów danego elementu
innerCode - kod generujący wnętrze elementu
Throws:
org.xml.sax.SAXException
palio.PalioException

addElement

public void addElement(java.lang.String name,
                       java.util.Map attributes,
                       java.lang.String innerText)
                throws org.xml.sax.SAXException
Dodaje do dokumentu element o nazwie name (qName) wraz z wewnętrznym tekstem (pomiędzy tagiem rozpoczynającym a kończącym).

Parameters:
name - nazwa elementu
attributes - zestaw atrybutów danego elementu
innerText - tekst wrzucany do wnętrza elementu
Throws:
org.xml.sax.SAXException

addElement

public void addElement(java.lang.String name,
                       java.lang.Object[] attributes,
                       java.lang.String innerText)
                throws org.xml.sax.SAXException
Dodaje do dokumentu element o nazwie name (qName) wraz z wewnętrznym tekstem (pomiędzy tagiem rozpoczynającym a kończącym).

Parameters:
name - nazwa elementu
attributes - zestaw atrybutów danego elementu
innerText - tekst wrzucany do wnętrza elementu
Throws:
org.xml.sax.SAXException

addElement

public void addElement(java.lang.String name,
                       java.lang.Object[] attributes,
                       palio.compiler.PalioCode innerCode)
                throws org.xml.sax.SAXException,
                       palio.PalioException
Dodaje do dokumentu element o nazwie name (qName) i podanych atrybutach. W kodzie innerCode można wywoływać metody addText(String) lub różne warianty metody addElement(String).

Parameters:
name - nazwa elementu
attributes - tablica atrybutów danego elementu, np: [klucz1, wartość1, klucz2, wartość2, ...]
innerCode - kod generujący wnętrze elementu
Throws:
org.xml.sax.SAXException
palio.PalioException

addText

public void addText(java.lang.String text)
             throws org.xml.sax.SAXException
Dodaje tekst do dokumentu. Funkcję można wywołać wewnątrz kodu funkcji addElement(String, palio.compiler.PalioCode) jeżeli w teym kodzie nie dodajemy innych elementów.

Parameters:
text - tekst do dodania
Throws:
org.xml.sax.SAXException

closeDocument

public byte[] closeDocument()
                     throws org.xml.sax.SAXException
Zamyka aktualny dokument i zwraca jego zawartość. Otrzymaną tablicę bajtów możemy zamienić na String używając wywołania: $toString($xml.closeDocument(), (String)$kodowanie)

Throws:
org.xml.sax.SAXException

parseDocument

public void parseDocument(java.lang.Long callbackObjectID,
                          java.lang.String document)
                   throws java.io.IOException,
                          org.xml.sax.SAXException
Czyta dokument XML przy użyciu zdarzeniowego interfejsu SAX. Przy napotkaniu każdego nowego elementu wykonuje obiekt o numerze callbackObjectID z parametrami: [String nazwa /qName/, Map atrybuty, Object[] kontekst elementu, String tekst zawarty między tagami elementu]. Taki sposób czytania dokumentów jest bardzo przydatny jeżeli trzeba wyciągnąć kilka konkretnych danych z dużego dokumentu XML beż zużycia dużej ilości pamięci serwera.

Parameters:
callbackObjectID - identyfikator obiektu wywoływanego po napotkaniu elementu
document - dokument XML
Throws:
java.io.IOException
org.xml.sax.SAXException

parseDocument

public void parseDocument(java.lang.String callbackObjectCode,
                          java.lang.String document)
                   throws java.io.IOException,
                          org.xml.sax.SAXException,
                          palio.PalioException
Czyta dokument XML przy użyciu zdarzeniowego interfejsu SAX. Przy napotkaniu każdego nowego elementu wykonuje obiekt o kodzie callbackObjectID z parametrami: [String nazwa /qName/, Map atrybuty, Object[] kontekst elementu, String tekst zawarty między tagami elementu]. Taki sposób czytania dokumentów jest bardzo przydatny jeżeli trzeba wyciągnąć kilka konkretnych danych z dużego dokumentu XML beż zużycia dużej ilości pamięci serwera.

Parameters:
callbackObjectCode - Kod obiektu wywoływanego po napotkaniu elementu
document - Dokument XML
Throws:
java.io.IOException
org.xml.sax.SAXException
palio.PalioException
Since:
jPALIO 7.4.32, module 1.4.1

parseDocument

public void parseDocument(java.lang.Long callbackObjectID,
                          byte[] document,
                          java.lang.String charset)
                   throws org.xml.sax.SAXException,
                          java.io.IOException
Czyta dokument XML przy użyciu zdarzeniowego interfejsu SAX. Przy napotkaniu każdego nowego elementu wykonuje obiekt o numerze callbackObjectID z parametrami: [String nazwa /qName/, Map atrybuty, Object[] kontekst elementu, String tekst zawarty między tagami elementu]. Taki sposób czytania dokumentów jest bardzo przydatny jeżeli trzeba wyciągnąć kilka konkretnych danych z dużego dokumentu XML beż zużycia dużej ilości pamięci serwera.

Parameters:
callbackObjectID - identyfikator obiektu wywoływanego po napotkaniu elementu
document - dokument XML
charset - kodowanie znaków w dokumencie
Throws:
org.xml.sax.SAXException
java.io.IOException

parseDocument

public void parseDocument(java.lang.String callbackObjectCode,
                          byte[] document,
                          java.lang.String charset)
                   throws org.xml.sax.SAXException,
                          java.io.IOException,
                          palio.PalioException
Czyta dokument XML przy użyciu zdarzeniowego interfejsu SAX. Przy napotkaniu każdego nowego elementu wykonuje obiekt o kodzie callbackObjectCode z parametrami: [String nazwa /qName/, Map atrybuty, Object[] kontekst elementu, String tekst zawarty między tagami elementu]. Taki sposób czytania dokumentów jest bardzo przydatny jeżeli trzeba wyciągnąć kilka konkretnych danych z dużego dokumentu XML beż zużycia dużej ilości pamięci serwera.

Parameters:
callbackObjectCode - Kod obiektu wywoływanego po napotkaniu elementu
document - Dokument XML
charset - Kodowanie znaków w dokumencie
Throws:
org.xml.sax.SAXException
java.io.IOException
palio.PalioException
Since:
jPALIO 7.4.32, module 1.4.1

transform

public static java.lang.String transform(java.lang.String xml,
                                         java.lang.String xsl,
                                         java.util.Map params,
                                         java.lang.String xslEncoding,
                                         java.lang.String outputEncoding)
                                  throws palio.PalioException
Dokonuje przekształcenia XSLT podanego Xml'a przy uzyciu podanego arkusza styli

Parameters:
xml - - xml do przekształcenia
xsl - - arkusz styli
params - - mapa z parametrami przekształcenia
xslEncoding - - kodowanie arkusza styli, jeżeli null stosowane jest kodowanie domyślne
outputEncoding - - kodowanie wyniku przekształcenia, jeżeli null stosowane jest kodowanie domyślne
Returns:
- wynik transformacji
Throws:
palio.PalioException

transform

public static java.lang.String transform(java.lang.String xml,
                                         java.lang.String xsl)
                                  throws palio.PalioException
Dokonuje przekształcenia XSLT podanego Xml'a przy uzyciu podanego arkusza styli

Parameters:
xml - - xml do przekształcenia
xsl - - arkusz styli
Returns:
- wynik transformacji
Throws:
palio.PalioException

evaluateXPathExpression

public static java.lang.String evaluateXPathExpression(java.lang.String xml,
                                                       java.lang.String expression)
                                                throws palio.PalioException
Wykonuje zapytanie XPath i zwraca tekstowy wynik.

Parameters:
xml - Dokument Xml
expression - Zapytanie języka XPath
Throws:
palio.PalioException

evaluateXPathExpressions

public static java.lang.Object[] evaluateXPathExpressions(java.lang.String xml,
                                                          java.lang.Object[] expressions)
                                                   throws palio.PalioException
Wykonuje serię zapytań języka XPath na podanym dokumencie Xml i zwraca tablicę tekstowych wyników każdego z zapytań.

Parameters:
xml - Dokument Xml
expressions - Zapytania języka XPath
Throws:
palio.PalioException

evaluateXPathAsNodesText

public static java.util.LinkedList evaluateXPathAsNodesText(java.lang.String xml,
                                                            java.lang.String expression)
                                                     throws palio.PalioException
Wykonuje zapytanie XPath, zakłada że wynikiem będzie lista gałęzi i zwraca tekstową zawartość tych gałęzi.

Parameters:
xml - Dokument Xml
expression - Zapytanie języka XPath
Throws:
palio.PalioException