<?xml version="1.0" encoding="UTF-8"?>
<taglib xmlns="http://java.sun.com/xml/ns/javaee"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
        xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
            http://java.sun.com/xml/ns/javaee/web-jsptaglibrary_2_1.xsd"
        version="2.1">
    <tlib-version>1.3</tlib-version>
    <short-name>Tag Library for Openfire</short-name>
    <description>Tab Library for Openfire Admin Console</description>
    <short-name>admin</short-name>
    <uri>admin</uri>
    <tag>
        <name>tabs</name>
        <tag-class>org.jivesoftware.admin.TabsTag</tag-class>
        <body-content>JSP</body-content>
        <attribute>
            <name>css</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>currentcss</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>role</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>minEdition</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>justlinks</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>
    <tag>
        <name>subnavbar</name>
        <tag-class>org.jivesoftware.admin.SubnavTag</tag-class>
        <body-content>JSP</body-content>
        <attribute>
            <name>css</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>currentcss</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>role</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>minEdition</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>
    <tag>
        <name>sidebar</name>
        <tag-class>org.jivesoftware.admin.SidebarTag</tag-class>
        <body-content>JSP</body-content>
        <attribute>
            <name>css</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>currentcss</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>headercss</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>role</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>minEdition</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>
    <tag>
        <name>subsidebar</name>
        <tag-class>org.jivesoftware.admin.SubSidebarTag</tag-class>
        <body-content>JSP</body-content>
        <attribute>
            <name>css</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>currentcss</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>role</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
        <attribute>
            <name>minEdition</name>
            <required>false</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>
    <tag>
        <name>ASN1DER</name>
        <tag-class>org.jivesoftware.admin.ASN1DERTag</tag-class>
        <body-content>JSP</body-content>
        <attribute>
            <name>value</name>
            <required>true</required>
            <rtexprvalue>true</rtexprvalue>
        </attribute>
    </tag>
    <tag>
        <name>FlashMessage</name>
        <tag-class>org.jivesoftware.admin.FlashMessageTag</tag-class>
        <body-content>empty</body-content>
    </tag>
    <tag-file>
        <name>contentBox</name>
        <path>/META-INF/tags/admin/contentBox.tagx</path>
    </tag-file>
    <tag-file>
        <name>infobox</name>
        <path>/META-INF/tags/admin/infoBox.tagx</path>
    </tag-file>
    <tag-file>
        <name>infoBox</name>
        <path>/META-INF/tags/admin/infoBox.tagx</path>
    </tag-file>
    <tag-file>
        <name>identityStoreConfig</name>
        <path>/META-INF/tags/admin/security/identityStoreConfig.tagx</path>
    </tag-file>
    <tag-file>
        <name>trustStoreConfig</name>
        <path>/META-INF/tags/admin/security/trustStoreConfig.tagx</path>
    </tag-file>
    <function>
        <name>replaceAll</name>
        <function-class>org.jivesoftware.admin.JSTLFunctions</function-class>
        <function-signature>java.lang.String replaceAll(java.lang.String, java.lang.String, java.lang.String)</function-signature>
    </function>
    <function>
        <name>split</name>
        <function-class>org.jivesoftware.admin.JSTLFunctions</function-class>
        <function-signature>java.lang.String[] split(java.lang.String, java.lang.String)</function-signature>
    </function>
    <function>
        <name>byteFormat</name>
        <function-class>org.jivesoftware.admin.JSTLFunctions</function-class>
        <function-signature>java.lang.String byteFormat(long)</function-signature>
    </function>
    <function>
        <name>urlEncode</name>
        <function-class>org.jivesoftware.admin.JSTLFunctions</function-class>
        <function-signature>java.lang.String urlEncode(java.lang.String)</function-signature>
    </function>
    <function>
        <name>urlDecode</name>
        <function-class>org.jivesoftware.admin.JSTLFunctions</function-class>
        <function-signature>java.lang.String urlDecode(java.lang.String)</function-signature>
    </function>
    <function>
        <name>escapeHTMLTags</name>
        <function-class>org.jivesoftware.admin.JSTLFunctions</function-class>
        <function-signature>java.lang.String escapeHTMLTags(java.lang.String)</function-signature>
    </function>
    <function>
        <name>serverIdentities</name>
        <function-class>org.jivesoftware.util.CertificateManager</function-class>
        <function-signature>java.util.List getServerIdentities(java.security.cert.X509Certificate)</function-signature>
    </function>
    <function>
        <name>clientIdentities</name>
        <function-class>org.jivesoftware.util.CertificateManager</function-class>
        <function-signature>java.util.List getClientIdentities(java.security.cert.X509Certificate)</function-signature>
    </function>
    <function>
        <name>getProperty</name>
        <function-class>org.jivesoftware.util.JiveGlobals</function-class>
        <function-signature>java.lang.String getProperty(java.lang.String,java.lang.String)</function-signature>
    </function>
    <function>
        <name>getIntProperty</name>
        <function-class>org.jivesoftware.util.JiveGlobals</function-class>
        <function-signature>int getIntProperty(java.lang.String,int)</function-signature>
    </function>
    <function>
        <name>getBooleanProperty</name>
        <function-class>org.jivesoftware.util.JiveGlobals</function-class>
        <function-signature>boolean getBooleanProperty(java.lang.String,boolean)</function-signature>
    </function>
    <function>
        <name>getLongProperty</name>
        <function-class>org.jivesoftware.util.JiveGlobals</function-class>
        <function-signature>long getLongProperty(java.lang.String,long)</function-signature>
    </function>
    <function>
        <name>getListProperty</name>
        <function-class>org.jivesoftware.util.JiveGlobals</function-class>
        <function-signature>java.util.List getListProperty(java.lang.String,java.util.List)</function-signature>
    </function>
    <function>
        <name>formatDate</name>
        <function-class>org.jivesoftware.util.JiveGlobals</function-class>
        <function-signature>java.lang.String formatDate(java.util.Date)</function-signature>
    </function>
    <function>
        <name>formatDateTime</name>
        <function-class>org.jivesoftware.util.JiveGlobals</function-class>
        <function-signature>java.lang.String formatDateTime(java.util.Date)</function-signature>
    </function>
    <function>
        <name>formatTime</name>
        <function-class>org.jivesoftware.util.JiveGlobals</function-class>
        <function-signature>java.lang.String formatTime(java.util.Date)</function-signature>
    </function>
    <function>
        <name>chopAtWord</name>
        <function-class>org.jivesoftware.util.StringUtils</function-class>
        <function-signature>java.lang.String chopAtWord(java.lang.String,int)</function-signature>
    </function>
    <function>
        <name>elapsedTime</name>
        <function-class>org.jivesoftware.util.StringUtils</function-class>
        <function-signature>java.lang.String getElapsedTime(long)</function-signature>
    </function>
    <function>
        <name>fullElapsedTime</name>
        <function-class>org.jivesoftware.util.StringUtils</function-class>
        <function-signature>java.lang.String getFullElapsedTime(java.time.Duration)</function-signature>
    </function>

</taglib>
