mirror of
https://github.com/apache/cloudstack.git
synced 2025-12-15 18:12:35 +01:00
migrate premium to oss
This commit is contained in:
parent
8ac29f78e7
commit
e9652e67ad
21
build.xml
21
build.xml
@ -16,11 +16,10 @@
|
|||||||
</condition>
|
</condition>
|
||||||
|
|
||||||
<property file="${build-cloud.properties.file}"/>
|
<property file="${build-cloud.properties.file}"/>
|
||||||
|
<property name="dist.dir" location="${base.dir}/dist"/>
|
||||||
|
<property name="target.dir" location="${base.dir}/target"/>
|
||||||
|
|
||||||
<property name="premium.name" value="cloudstack-proprietary"/>
|
<condition property="build.premium" value="true" else="flase">
|
||||||
<property name="premium.base.dir" location="${base.dir}/${premium.name}"/>
|
|
||||||
|
|
||||||
<condition property="my.build.dir" value="${premium.base.dir}/build" else="${base.dir}/build">
|
|
||||||
<and>
|
<and>
|
||||||
<available file="${premium.base.dir}/build"/>
|
<available file="${premium.base.dir}/build"/>
|
||||||
<not>
|
<not>
|
||||||
@ -29,13 +28,9 @@
|
|||||||
</and>
|
</and>
|
||||||
</condition>
|
</condition>
|
||||||
|
|
||||||
|
<import file="${base.dir}/build/build-cloud.xml" optional="false"/>
|
||||||
<property name="dist.dir" location="${base.dir}/dist"/>
|
<import file="${base.dir}/build/build-docs.xml" optional="true"/>
|
||||||
<property name="target.dir" location="${base.dir}/target"/>
|
<import file="${base.dir}/build/build-tests.xml" optional="true"/>
|
||||||
|
<import file="${base.dir}/build/package.xml" optional="true"/>
|
||||||
<import file="${my.build.dir}/build-cloud.xml" optional="false"/>
|
<import file="${base.dir}/build/developer.xml" optional="true"/>
|
||||||
<import file="${my.build.dir}/build-docs.xml" optional="true"/>
|
|
||||||
<import file="${my.build.dir}/build-tests.xml" optional="true"/>
|
|
||||||
<import file="${my.build.dir}/package.xml" optional="true"/>
|
|
||||||
<import file="${my.build.dir}/developer.xml" optional="true"/>
|
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
@ -61,9 +61,9 @@
|
|||||||
<property name="dep.cache.dir" location="${target.dir}/dep-cache" />
|
<property name="dep.cache.dir" location="${target.dir}/dep-cache" />
|
||||||
<property name="build.log" location="${target.dir}/ant_verbose.txt" />
|
<property name="build.log" location="${target.dir}/ant_verbose.txt" />
|
||||||
|
|
||||||
<property name="proprietary.dir" location="${base.dir}/${premium.name}" />
|
<property name="proprietary.dir" location="${base.dir}/cloudstack-proprietary" />
|
||||||
|
|
||||||
<property name="thirdparty.dir" location="${proprietary.dir}/thirdparty" />
|
<property name="thirdparty.dir" location="${base.dir}/thirdparty" />
|
||||||
<property name="deps.dir" location="${base.dir}/deps" />
|
<property name="deps.dir" location="${base.dir}/deps" />
|
||||||
|
|
||||||
<!-- directories for client compilation-->
|
<!-- directories for client compilation-->
|
||||||
@ -100,6 +100,15 @@
|
|||||||
<property name="console-viewer.dir" location="${base.dir}/console-viewer" />
|
<property name="console-viewer.dir" location="${base.dir}/console-viewer" />
|
||||||
<property name="console-viewer.dist.dir" location="${dist.dir}/console-viewer" />
|
<property name="console-viewer.dist.dir" location="${dist.dir}/console-viewer" />
|
||||||
|
|
||||||
|
<property name="usage.dir" location="${proprietary.dir}/usage" />
|
||||||
|
<property name="usage.dist.dir" location="${dist.dir}/usage" />
|
||||||
|
<property name="test.target.dir" location="${target.dir}/test" />
|
||||||
|
<property name="test.classes.dir" location="${test.target.dir}/classes" />
|
||||||
|
<property name="testclient.jar" value="cloud-test.jar" />
|
||||||
|
|
||||||
|
<property name="testclient.dir" location="${proprietary.dir}/test" />
|
||||||
|
<property name="testclient.dist.dir" location="${dist.dir}/test" />
|
||||||
|
|
||||||
<property name="tools.dir" location="${base.dir}/tools" />
|
<property name="tools.dir" location="${base.dir}/tools" />
|
||||||
<!-- <property name="antcontrib.dir" location="${tools.dir}/tools/ant/apache-ant-1.8.0/lib" />-->
|
<!-- <property name="antcontrib.dir" location="${tools.dir}/tools/ant/apache-ant-1.8.0/lib" />-->
|
||||||
<property name="deploy.dir" location="${build.dir}/deploy" />
|
<property name="deploy.dir" location="${build.dir}/deploy" />
|
||||||
@ -112,6 +121,9 @@
|
|||||||
<property name="test.target.dir" location="${target.dir}/test" />
|
<property name="test.target.dir" location="${target.dir}/test" />
|
||||||
<property name="test.classes.dir" location="${test.target.dir}/classes" />
|
<property name="test.classes.dir" location="${test.target.dir}/classes" />
|
||||||
|
|
||||||
|
<property name="premium.dir" location="${proprietary.dir}/premium" />
|
||||||
|
<property name="core-premium.dir" location="${proprietary.dir}/core-premium" />
|
||||||
|
|
||||||
<!-- directories for branding -->
|
<!-- directories for branding -->
|
||||||
<property name="branding.dir" location="${build.dir}/deploy/branding/${branding.name}" />
|
<property name="branding.dir" location="${build.dir}/deploy/branding/${branding.name}" />
|
||||||
|
|
||||||
@ -122,6 +134,9 @@
|
|||||||
<property name="console-common.jar" value="cloud-console-common.jar" />
|
<property name="console-common.jar" value="cloud-console-common.jar" />
|
||||||
<property name="console-proxy.jar" value="cloud-console-proxy.jar" />
|
<property name="console-proxy.jar" value="cloud-console-proxy.jar" />
|
||||||
<property name="api.jar" value="cloud-api.jar"/>
|
<property name="api.jar" value="cloud-api.jar"/>
|
||||||
|
<property name="usage.jar" value="cloud-usage.jar" />
|
||||||
|
<property name="core-premium.jar" value="cloud-core-extras.jar"/>
|
||||||
|
<property name="premium.jar" value="cloud-server-extras.jar" />
|
||||||
|
|
||||||
<!--
|
<!--
|
||||||
Import information about the build version and company information
|
Import information about the build version and company information
|
||||||
@ -299,7 +314,15 @@
|
|||||||
<path refid="dist.classpath" />
|
<path refid="dist.classpath" />
|
||||||
</path>
|
</path>
|
||||||
<target name="compile-console-proxy" depends="-init, compile-console-common" description="Compile the console proxy.">
|
<target name="compile-console-proxy" depends="-init, compile-console-common" description="Compile the console proxy.">
|
||||||
<compile-java jar.name="${console-proxy.jar}" top.dir="${console-proxy.dir}" classpath="console-proxy.classpath" />
|
<compile-java jar.name="${console-proxy.jar}" top.dir="${console-proxy.dir}" classpath="console-proxy.classpath" >
|
||||||
|
<include-files>
|
||||||
|
<fileset dir="${console-proxy.dir}/certs">
|
||||||
|
<include name="*.keystore" />
|
||||||
|
<include name="*.crt" />
|
||||||
|
<include name="*.key" />
|
||||||
|
</fileset>
|
||||||
|
</include-files>
|
||||||
|
</compile-java>
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<target name="copy-console-proxy" depends="-init">
|
<target name="copy-console-proxy" depends="-init">
|
||||||
@ -312,6 +335,7 @@
|
|||||||
<mkdir dir="${copyto.dir}/js" />
|
<mkdir dir="${copyto.dir}/js" />
|
||||||
<mkdir dir="${copyto.dir}/ui" />
|
<mkdir dir="${copyto.dir}/ui" />
|
||||||
<mkdir dir="${copyto.dir}/css" />
|
<mkdir dir="${copyto.dir}/css" />
|
||||||
|
<mkdir dir="${copyto.dir}/certs" />
|
||||||
|
|
||||||
<copy todir="${copyto.dir}">
|
<copy todir="${copyto.dir}">
|
||||||
<fileset dir="${deps.dir}">
|
<fileset dir="${deps.dir}">
|
||||||
@ -361,6 +385,13 @@
|
|||||||
<include name="*.css" />
|
<include name="*.css" />
|
||||||
</fileset>
|
</fileset>
|
||||||
</copy>
|
</copy>
|
||||||
|
<copy todir="${copyto.dir}/certs">
|
||||||
|
<fileset dir="${console-proxy.dir}/certs">
|
||||||
|
<include name="*.keystore" />
|
||||||
|
<include name="*.crt" />
|
||||||
|
<include name="*.key" />
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<target name="build-console-proxy" depends="-init, build-console-viewer, compile-console-proxy, copy-console-proxy">
|
<target name="build-console-proxy" depends="-init, build-console-viewer, compile-console-proxy, copy-console-proxy">
|
||||||
@ -416,11 +447,6 @@
|
|||||||
<compile-java jar.name="${agent.jar}" top.dir="${agent.dir}" classpath="agent.classpath" />
|
<compile-java jar.name="${agent.jar}" top.dir="${agent.dir}" classpath="agent.classpath" />
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<target name="-init-test" depends="-init">
|
|
||||||
<mkdir dir="${test.target.dir}" />
|
|
||||||
<mkdir dir="${test.classes.dir}" />
|
|
||||||
</target>
|
|
||||||
|
|
||||||
<target name="build-agent" depends="-init, build-console-proxy, compile-agent">
|
<target name="build-agent" depends="-init, build-console-proxy, compile-agent">
|
||||||
<mkdir dir="${agent.dist.dir}" />
|
<mkdir dir="${agent.dist.dir}" />
|
||||||
<mkdir dir="${agent.dist.dir}/scripts" />
|
<mkdir dir="${agent.dist.dir}/scripts" />
|
||||||
@ -526,6 +552,119 @@
|
|||||||
<delete dir="${dist.dir}/build-patch"/>
|
<delete dir="${dist.dir}/build-patch"/>
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
|
<path id="usage.classpath">
|
||||||
|
<path refid="thirdparty.classpath" />
|
||||||
|
<path refid="dist.classpath" />
|
||||||
|
</path>
|
||||||
|
<target name="compile-usage" depends="-init, compile-utils, compile-core, compile-server, compile-premium" description="Compile the usage server">
|
||||||
|
<compile-java jar.name="${usage.jar}" top.dir="${usage.dir}" classpath="usage.classpath" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="build-usage" depends="-init, compile-console-proxy, compile-usage">
|
||||||
|
<mkdir dir="${usage.dist.dir}/bin" />
|
||||||
|
<mkdir dir="${usage.dist.dir}/conf" />
|
||||||
|
|
||||||
|
<copy todir="${usage.dist.dir}/bin">
|
||||||
|
<fileset dir="${usage.dir}/scripts">
|
||||||
|
<include name="usageserver.sh" />
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
<copy overwrite="true" todir="${usage.dist.dir}/lib">
|
||||||
|
<fileset dir="${jar.dir}">
|
||||||
|
<include name="${usage.jar}" />
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="-init-test" depends="-init">
|
||||||
|
<mkdir dir="${test.target.dir}" />
|
||||||
|
<mkdir dir="${test.classes.dir}" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<path id="testclient.classpath">
|
||||||
|
<path refid="thirdparty.classpath" />
|
||||||
|
<path refid="dist.classpath" />
|
||||||
|
</path>
|
||||||
|
<target name="compile-testclient" depends="-init-test, compile-utils, compile-premium" description="Compile the test client.">
|
||||||
|
<echo message="src is ${testclient.dir}"/>
|
||||||
|
<compile-java jar.name="${testclient.jar}" top.dir="${testclient.dir}" classpath="testclient.classpath" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="build-testclient" depends="-init-test, compile-testclient">
|
||||||
|
<mkdir dir="${testclient.dist.dir}/src" />
|
||||||
|
<mkdir dir="${testclient.dist.dir}/conf" />
|
||||||
|
<mkdir dir="${testclient.dist.dir}/metadata" />
|
||||||
|
<mkdir dir="${testclient.dist.dir}/usage" />
|
||||||
|
|
||||||
|
<copy todir="${testclient.dist.dir}/src">
|
||||||
|
<fileset dir="${jar.dir}">
|
||||||
|
<include name="${testclient.jar}" />
|
||||||
|
<include name="${utils.jar}" />
|
||||||
|
</fileset>
|
||||||
|
<fileset dir="${thirdparty.dir}">
|
||||||
|
<include name="commons-httpclient-3.1.jar" />
|
||||||
|
<include name="commons-logging-1.1.1.jar" />
|
||||||
|
<include name="commons-codec-1.4.jar" />
|
||||||
|
<include name="log4j-1.2.15.jar" />
|
||||||
|
<include name="apache-log4j-extras-1.0.jar" />
|
||||||
|
<include name="trilead-ssh2-build213.jar" />
|
||||||
|
<include name="mysql-connector-java-5.1.7-bin.jar" />
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
<copy overwrite="true" todir="${testclient.dist.dir}/conf">
|
||||||
|
<fileset dir="${testclient.dir}/conf">
|
||||||
|
<include name="log4j.properties" />
|
||||||
|
<include name="templates.sql" />
|
||||||
|
<include name="deploy.xml" />
|
||||||
|
<include name="config.xml" />
|
||||||
|
<include name="tool.properties" />
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy overwrite="true" todir="${testclient.dist.dir}/scripts">
|
||||||
|
<fileset dir="${testclient.dir}/scripts" />
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy overwrite="true" todir="${testclient.dist.dir}/metadata">
|
||||||
|
<fileset dir="${testclient.dir}/metadata" />
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy todir="${testclient.dist.dir}/usage" overwrite="true">
|
||||||
|
<fileset dir="${testclient.dir}/scripts/usage" />
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<copy overwrite="true" todir="${testclient.dist.dir}">
|
||||||
|
<fileset dir="${testclient.dir}/conf/">
|
||||||
|
<include name="deploy.properties" />
|
||||||
|
</fileset>
|
||||||
|
</copy>
|
||||||
|
|
||||||
|
<chmod file="${testclient.dist.dir}/deploy.sh" perm="uog+xr" />
|
||||||
|
<chmod file="${testclient.dist.dir}/cleanup.sh" perm="uog+xr" />
|
||||||
|
<chmod file="${testclient.dist.dir}/cleanparallel.sh" perm="uog+xr" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<path id="core-premium.classpath">
|
||||||
|
<path refid="thirdparty.classpath" />
|
||||||
|
<path refid="dist.classpath" />
|
||||||
|
</path>
|
||||||
|
<target name="compile-core-premium" depends="-init, compile-utils, compile-core, compile-server" description="Compile the premium business logic.">
|
||||||
|
<!-- compile-server is now added because core-premium imports a class com.cloud.configuration.Config that is only in server.jar. These are the kinds of
|
||||||
|
bugs that are only discovered with a parallel compilation mode. You are welcome. -->
|
||||||
|
<compile-java jar.name="${core-premium.jar}" top.dir="${core-premium.dir}" classpath="core-premium.classpath" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<path id="premium.classpath">
|
||||||
|
<path refid="thirdparty.classpath" />
|
||||||
|
<path refid="dist.classpath" />
|
||||||
|
</path>
|
||||||
|
<target name="compile-premium" depends="-init, compile-utils, compile-core-premium, compile-server, compile-console-proxy" description="Compile the premium business logic.">
|
||||||
|
<compile-java jar.name="${premium.jar}" top.dir="${premium.dir}" classpath="premium.classpath" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="build-premium" depends="build-opensource, compile-premium, build-usage">
|
||||||
|
</target>
|
||||||
|
|
||||||
<target name="help">
|
<target name="help">
|
||||||
<echo level="info" message="Ant Build File for Cloud.com Cloud Stack" />
|
<echo level="info" message="Ant Build File for Cloud.com Cloud Stack" />
|
||||||
<echo level="info" message="Type 'ant -projecthelp' to get a list of targets and their descriptions." />
|
<echo level="info" message="Type 'ant -projecthelp' to get a list of targets and their descriptions." />
|
||||||
|
|||||||
@ -139,7 +139,13 @@
|
|||||||
</zip>
|
</zip>
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<target name="build-all" depends="build-opensource, build-ui, build-war-oss">
|
<target name="conditional-build-premium" if="build.premium" >
|
||||||
|
<antcall target="build-usage"/>
|
||||||
|
<antcall target="build-testclient"/>
|
||||||
|
<antcall target="build-premium" />
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="build-all" depends="build-opensource, build-ui, build-war-oss, conditional-build-premium">
|
||||||
</target>
|
</target>
|
||||||
|
|
||||||
<target name="build-war-oss" depends="-init-package" description="Compile the GWT client UI and builds WAR file.">
|
<target name="build-war-oss" depends="-init-package" description="Compile the GWT client UI and builds WAR file.">
|
||||||
@ -188,13 +194,10 @@
|
|||||||
<include name="${core.jar}" />
|
<include name="${core.jar}" />
|
||||||
<include name="${api.jar}" />
|
<include name="${api.jar}" />
|
||||||
</zipfileset>
|
</zipfileset>
|
||||||
<zipfileset dir="${console-proxy.dist.dir}">
|
|
||||||
<exclude name="**/*.sh" />
|
|
||||||
<exclude name="**/certs/" />
|
|
||||||
<exclude name="**/cloud-console-proxy-premium.jar" />
|
|
||||||
</zipfileset>
|
|
||||||
<zipfileset dir="${console-proxy.dist.dir}" filemode="555">
|
<zipfileset dir="${console-proxy.dist.dir}" filemode="555">
|
||||||
<include name="**/*.sh" />
|
<include name="**/*.sh" />
|
||||||
|
<include name="**/certs/" />
|
||||||
|
<include name="**/cloud-console-proxy-premium.jar" />
|
||||||
</zipfileset>
|
</zipfileset>
|
||||||
<zipfileset dir="${scripts.dir}/storage/secondary" prefix="scripts/storage/secondary" filemode="555">
|
<zipfileset dir="${scripts.dir}/storage/secondary" prefix="scripts/storage/secondary" filemode="555">
|
||||||
<exclude name="**/.project" />
|
<exclude name="**/.project" />
|
||||||
|
|||||||
13
client/tomcatconf/commands-ext.properties.in
Normal file
13
client/tomcatconf/commands-ext.properties.in
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
#### usage commands
|
||||||
|
generateUsageRecords=com.cloud.api.commands.GenerateUsageRecordsCmd;1
|
||||||
|
listUsageRecords=com.cloud.api.commands.GetUsageRecordsCmd;1
|
||||||
|
|
||||||
|
#### external firewall commands
|
||||||
|
addExternalFirewall=com.cloud.api.commands.AddExternalFirewallCmd;1
|
||||||
|
deleteExternalFirewall=com.cloud.api.commands.DeleteExternalFirewallCmd;1
|
||||||
|
listExternalFirewalls=com.cloud.api.commands.ListExternalFirewallsCmd;1
|
||||||
|
|
||||||
|
#### external loadbalancer commands
|
||||||
|
addExternalLoadBalancer=com.cloud.api.commands.AddExternalLoadBalancerCmd;1
|
||||||
|
deleteExternalLoadBalancer=com.cloud.api.commands.DeleteExternalLoadBalancerCmd;1
|
||||||
|
listExternalLoadBalancers=com.cloud.api.commands.ListExternalLoadBalancersCmd;1
|
||||||
50
client/tomcatconf/components-premium.xml.in
Executable file
50
client/tomcatconf/components-premium.xml.in
Executable file
@ -0,0 +1,50 @@
|
|||||||
|
<?xml version="1.0"?>
|
||||||
|
<components-premium.xml>
|
||||||
|
<management-server class="com.cloud.server.ManagementServerExtImpl" library="com.cloud.configuration.PremiumComponentLibrary" extends="components.xml:management-server">
|
||||||
|
<adapters key="com.cloud.ha.Investigator">
|
||||||
|
<adapter name="SimpleInvestigator" class="com.cloud.ha.CheckOnAgentInvestigator"/>
|
||||||
|
<adapter name="XenServerInvestigator" class="com.cloud.ha.XenServerInvestigator"/>
|
||||||
|
<adapter name="PingInvestigator" class="com.cloud.ha.InvestigatorImpl"/>
|
||||||
|
</adapters>
|
||||||
|
<adapters key="com.cloud.ha.FenceBuilder">
|
||||||
|
<adapter name="XenServerFenceBuilder" class="com.cloud.ha.XenServerFencer"/>
|
||||||
|
<adapter name="KVMFenceBuilder" class="com.cloud.ha.KVMFencer"/>
|
||||||
|
</adapters>
|
||||||
|
<adapters key="com.cloud.cluster.ClusterServiceAdapter">
|
||||||
|
<adapter name="ClusterService" class="com.cloud.cluster.ClusterServiceServletAdapter"/>
|
||||||
|
</adapters>
|
||||||
|
<adapters key="com.cloud.network.guru.NetworkGuru">
|
||||||
|
<adapter name="ExternalGuestNetworkGuru" class="com.cloud.network.guru.ExternalGuestNetworkGuru"/>
|
||||||
|
<adapter name="OvsGuestNetworkGuru" class="com.cloud.network.guru.OvsGuestNetworkGuru"/>
|
||||||
|
<adapter name="PublicNetworkGuru" class="com.cloud.network.guru.PublicNetworkGuru"/>
|
||||||
|
<adapter name="PodBasedNetworkGuru" class="com.cloud.network.guru.PodBasedNetworkGuru"/>
|
||||||
|
<adapter name="ControlNetworkGuru" class="com.cloud.network.guru.ControlNetworkGuru"/>
|
||||||
|
<adapter name="DirectNetworkGuru" class="com.cloud.network.guru.DirectNetworkGuru"/>
|
||||||
|
<adapter name="DirectPodBasedNetworkGuru" class="com.cloud.network.guru.DirectPodBasedNetworkGuru"/>
|
||||||
|
</adapters>
|
||||||
|
<adapters key="com.cloud.network.element.NetworkElement">
|
||||||
|
<adapter name="ExternalFirewall" class="com.cloud.network.element.ExternalFirewallElement"/>
|
||||||
|
<adapter name="ExternalLoadBalancer" class="com.cloud.network.element.ExternalLoadBalancerElement"/>
|
||||||
|
<adapter name="DomainRouter" class="com.cloud.network.element.VirtualRouterElement"/>
|
||||||
|
<adapter name="Dhcp" class="com.cloud.network.element.DhcpElement"/>
|
||||||
|
</adapters>
|
||||||
|
<adapters key="com.cloud.resource.Discoverer">
|
||||||
|
<adapter name="XenServer" class="com.cloud.hypervisor.xen.discoverer.XenServerDiscoverer"/>
|
||||||
|
<adapter name="SecondaryStorage" class="com.cloud.storage.secondary.SecondaryStorageDiscoverer"/>
|
||||||
|
<adapter name="KVM Agent" class="com.cloud.hypervisor.kvm.discoverer.KvmServerDiscoverer"/>
|
||||||
|
<adapter name="VShpereServer" class="com.cloud.hypervisor.vmware.VmwareServerDiscoverer"/>
|
||||||
|
</adapters>
|
||||||
|
<adapters key="com.cloud.alert.AlertAdapter">
|
||||||
|
<adapter name="ClusterAlert" class="com.cloud.alert.ClusterAlertAdapter"/>
|
||||||
|
<adapter name="ConsoleProxyAlert" class="com.cloud.alert.ConsoleProxyAlertAdapter"/>
|
||||||
|
<adapter name="SecondaryStorageVmAlert" class="com.cloud.alert.SecondaryStorageVmAlertAdapter"/>
|
||||||
|
</adapters>
|
||||||
|
</management-server>
|
||||||
|
|
||||||
|
<configuration-server class="com.cloud.server.ConfigurationServerImpl" extends="components.xml:configuration-server">
|
||||||
|
<dao name="Configuration configuration server" class="com.cloud.configuration.dao.ConfigurationDaoImpl" singleton="false">
|
||||||
|
<param name="premium">true</param>
|
||||||
|
</dao>
|
||||||
|
</configuration-server>
|
||||||
|
|
||||||
|
</components-premium.xml>
|
||||||
25
cloud.spec
25
cloud.spec
@ -294,16 +294,6 @@ The Cloud.com test package contains a suite of automated tests
|
|||||||
that the very much appreciated QA team at Cloud.com constantly
|
that the very much appreciated QA team at Cloud.com constantly
|
||||||
uses to help increase the quality of the Cloud.com Stack.
|
uses to help increase the quality of the Cloud.com Stack.
|
||||||
|
|
||||||
%package premium-deps
|
|
||||||
Summary: Cloud.com premium library dependencies
|
|
||||||
Requires: java >= 1.6.0
|
|
||||||
Provides: %{name}-deps = %{version}-%{release}
|
|
||||||
Group: System Environment/Libraries
|
|
||||||
Obsoletes: vmops-premium-deps < %{version}-%{release}
|
|
||||||
%description premium-deps
|
|
||||||
This package contains the certified software components required to run
|
|
||||||
the premium edition of the Cloud.com Stack.
|
|
||||||
|
|
||||||
%package premium
|
%package premium
|
||||||
Summary: Cloud.com premium components
|
Summary: Cloud.com premium components
|
||||||
Obsoletes: vmops-premium < %{version}-%{release}
|
Obsoletes: vmops-premium < %{version}-%{release}
|
||||||
@ -501,6 +491,8 @@ fi
|
|||||||
%{_javadir}/%{name}-bcprov-jdk16-1.45.jar
|
%{_javadir}/%{name}-bcprov-jdk16-1.45.jar
|
||||||
%{_javadir}/%{name}-jsch-0.1.42.jar
|
%{_javadir}/%{name}-jsch-0.1.42.jar
|
||||||
|
|
||||||
|
%defattr(0644,root,root,0755)
|
||||||
|
%{_javadir}/%{name}-premium/*.jar
|
||||||
|
|
||||||
%files core
|
%files core
|
||||||
%defattr(0644,root,root,0755)
|
%defattr(0644,root,root,0755)
|
||||||
@ -524,9 +516,7 @@ fi
|
|||||||
%files client
|
%files client
|
||||||
%defattr(0644,root,root,0775)
|
%defattr(0644,root,root,0775)
|
||||||
%{_sysconfdir}/%{name}/management/*
|
%{_sysconfdir}/%{name}/management/*
|
||||||
%if %{_premium}
|
%{_sysconfdir}/%{name}/management/*premium*
|
||||||
%exclude %{_sysconfdir}/%{name}/management/*premium*
|
|
||||||
%endif
|
|
||||||
%config(noreplace) %attr(0640,root,%{name}) %{_sysconfdir}/%{name}/management/db.properties
|
%config(noreplace) %attr(0640,root,%{name}) %{_sysconfdir}/%{name}/management/db.properties
|
||||||
%config(noreplace) %{_sysconfdir}/%{name}/management/log4j-%{name}.xml
|
%config(noreplace) %{_sysconfdir}/%{name}/management/log4j-%{name}.xml
|
||||||
%config(noreplace) %{_sysconfdir}/%{name}/management/tomcat6.conf
|
%config(noreplace) %{_sysconfdir}/%{name}/management/tomcat6.conf
|
||||||
@ -594,19 +584,10 @@ fi
|
|||||||
%{_libdir}/%{name}/test/*
|
%{_libdir}/%{name}/test/*
|
||||||
%{_sysconfdir}/%{name}/test/*
|
%{_sysconfdir}/%{name}/test/*
|
||||||
|
|
||||||
%files premium-deps
|
|
||||||
%defattr(0644,root,root,0755)
|
|
||||||
%{_javadir}/%{name}-premium/*.jar
|
|
||||||
|
|
||||||
%files premium
|
%files premium
|
||||||
%defattr(0644,root,root,0755)
|
%defattr(0644,root,root,0755)
|
||||||
%{_javadir}/%{name}-core-extras.jar
|
%{_javadir}/%{name}-core-extras.jar
|
||||||
%{_javadir}/%{name}-server-extras.jar
|
%{_javadir}/%{name}-server-extras.jar
|
||||||
%{_sysconfdir}/%{name}/management/commands-ext.properties
|
|
||||||
%{_sysconfdir}/%{name}/management/components-premium.xml
|
|
||||||
%{_libdir}/%{name}/agent/vms/systemvm-premium.iso
|
|
||||||
%{_datadir}/%{name}/setup/create-database-premium.sql
|
|
||||||
%{_datadir}/%{name}/setup/create-schema-premium.sql
|
|
||||||
# maintain the following list in sync with files agent-scripts
|
# maintain the following list in sync with files agent-scripts
|
||||||
%{_libdir}/%{name}/agent/premium-scripts/*
|
%{_libdir}/%{name}/agent/premium-scripts/*
|
||||||
|
|
||||||
|
|||||||
22
console-proxy/certs/localhost.crt
Normal file
22
console-proxy/certs/localhost.crt
Normal file
@ -0,0 +1,22 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIDrTCCApWgAwIBAgIBADANBgkqhkiG9w0BAQUFADBxMQswCQYDVQQGEwJVUzEL
|
||||||
|
MAkGA1UECAwCQ0ExEjAQBgNVBAcMCUN1cGVydGlubzESMBAGA1UECgwJQ2xvdWQu
|
||||||
|
Y29tMRAwDgYDVQQLDAdEZWZhdWx0MRswGQYDVQQDDBJTZWNvbmRhcnlTdG9yYWdl
|
||||||
|
Vk0wHhcNMTAwNTI3MTgzNjI1WhcNMTMwMjIwMTgzNjI1WjBxMQswCQYDVQQGEwJV
|
||||||
|
UzELMAkGA1UECAwCQ0ExEjAQBgNVBAcMCUN1cGVydGlubzESMBAGA1UECgwJQ2xv
|
||||||
|
dWQuY29tMRAwDgYDVQQLDAdEZWZhdWx0MRswGQYDVQQDDBJTZWNvbmRhcnlTdG9y
|
||||||
|
YWdlVk0wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCbhstQ5Gn2gzrk
|
||||||
|
ZX1es+tuz4rnrcONRHUzyY/UdoT5jiVfmmS9CML/GgSpKzmnEMNZcCSh7G/GKPwD
|
||||||
|
gBZywpTVD56nYT4ZzK0GjPxcg0a+BvxxA2esQ2/kFBvtdcZ1TNExtjdOqysjK0It
|
||||||
|
M6U2891wbn+Y9oHqooTA0uaZELTpe/MCg2eBx7A4+u26novHHfOaKEEqtBscpDP8
|
||||||
|
0+nQduNQf61haV25Lv2CDqrCIuv/FrNmgQhcUg8e1dFkk4VCsflEDuSYh9PpaD7J
|
||||||
|
t+oqmNTVw8k6u3JAYJFkcu457uYz0wrED7Cai7Y6gUy7xwmY2SSY/r2mJJHEpSpZ
|
||||||
|
NhiH47kZAgMBAAGjUDBOMB0GA1UdDgQWBBQ2hUX5Jdhn277SBisACnEABqg52zAf
|
||||||
|
BgNVHSMEGDAWgBQ2hUX5Jdhn277SBisACnEABqg52zAMBgNVHRMEBTADAQH/MA0G
|
||||||
|
CSqGSIb3DQEBBQUAA4IBAQBAVrkGGDPHDPQdZRgI1+1L87sX5xdNoet9sJUVRtz9
|
||||||
|
ZwhGWAmca30cJGlhSFNx5y01E6T7lHDLrF9HCf9nVC10t0FwQwTVYijE8VyM7fAA
|
||||||
|
4Hv/whSKg1kkQQSTis2ZW0wMU6TnanhJy6MrxwdhRampeXjNOpNtoLrF/5LbhWxO
|
||||||
|
Gm0S5u+4q7eYnUPD4o3sb17idG62kkejHeToPnJwXtDwyq0XYNlL/OoqRaaY5f0b
|
||||||
|
IKdeqqEkdtkzfU4N1dG7bJA29gBl48gPn+CSrh9u3D0s1OYM7MWi1/TjpwCR18ir
|
||||||
|
CslVzO6kVNyQoNEYhZ9+2Sz0ceZVrYDFFzp8qAF8qbZ7
|
||||||
|
-----END CERTIFICATE-----
|
||||||
27
console-proxy/certs/localhost.key
Normal file
27
console-proxy/certs/localhost.key
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
MIIEpAIBAAKCAQEAm4bLUORp9oM65GV9XrPrbs+K563DjUR1M8mP1HaE+Y4lX5pk
|
||||||
|
vQjC/xoEqSs5pxDDWXAkoexvxij8A4AWcsKU1Q+ep2E+GcytBoz8XINGvgb8cQNn
|
||||||
|
rENv5BQb7XXGdUzRMbY3TqsrIytCLTOlNvPdcG5/mPaB6qKEwNLmmRC06XvzAoNn
|
||||||
|
gcewOPrtup6Lxx3zmihBKrQbHKQz/NPp0HbjUH+tYWlduS79gg6qwiLr/xazZoEI
|
||||||
|
XFIPHtXRZJOFQrH5RA7kmIfT6Wg+ybfqKpjU1cPJOrtyQGCRZHLuOe7mM9MKxA+w
|
||||||
|
mou2OoFMu8cJmNkkmP69piSRxKUqWTYYh+O5GQIDAQABAoIBAQCI5S8VNtimaYBv
|
||||||
|
BX5C26+BzCECKIsWT4myWdrGMsR9PUdcTXQaiBnLncU4epm2miS5FuLHvGvuSqj5
|
||||||
|
E8eun+ONXsBRqGCXKPer6nE/pTWhklilyU9566oTYjfq3l4fZcxFK5SnJDdGL4+C
|
||||||
|
ZhEou6LQkhKyO1jDhOXBLGJZnMEBOf+zXhgZGLDbQwCcCQ5PAZUiSf0cnVRk3rI9
|
||||||
|
GwdsbCDNJk6awy8ANlFATemDvHwHZ7ZwmvVzsjsYlYJbY/vJYlOyxa7tzYROVAlm
|
||||||
|
m8oiPfDvGjnXcGxVQwT0pgDvwtUkUFijZORpkJOPavxqSkpOzDFrOe9UW6HJYGzH
|
||||||
|
ujhmZBVhAoGBAMnbfssRwYI5egfsxNbA62NkxRcGe5HIlnyZ1Ln0BCE8ae60frcf
|
||||||
|
4IluZzT53Ly3jUQP2uGdp6nJVq/5ymRYSySNr46DXek2qcJ2TMbtRBhjebPwi+Rb
|
||||||
|
qTNjccNSgqs0j+1qP78PoTUO5fUWGL9XqIlfPU6Vji4+SmdNMvz6z84lAoGBAMU9
|
||||||
|
/3l2WVXykD6FNrRbtvpzU1C9LDixOaVVpGnZHO8krW440LnhIZJbkXnXDVZXc7eI
|
||||||
|
D/doecfL8rtFteqeBr0LiXGQXU5mIMjXAOAPSvDqIciYzhL8KOK5CWEgVZo6RQlU
|
||||||
|
G3ne0mk93I+w8N0SE2VKeuxepz4yw0oiKUpAgWrlAoGAS06qNRSAvxa2YjKBFSWQ
|
||||||
|
K9qydO6kNzVAf2fcpytURxoE41tPUv5/hIY91tPI+Fb6SwQnQrjQjlVhE/H7Agi2
|
||||||
|
sAJ0FpUH+jO8jaIY7rYiC39BLlJ1vlI8A8H79UTZHwpTD93tvlgUankObas6vFf1
|
||||||
|
tppjgufkzXfLxlJUzXC9CkkCgYA7gy9YOKtP0XZQRuVwmdOl0bIrxEhZeq/IAQUw
|
||||||
|
or+mMEzb2uyviQwWGubT+l0d1hkmITmgDrff3tuIQcpX1gJ2e8qmp0Zf51SxBJ5Q
|
||||||
|
/IxCEILNAb374HV9oxL/aUAq3rYB0IzRwrd95ZptCJhEO7X6c/SO6ShRDgP6lEAd
|
||||||
|
FUV3OQKBgQCFC0Xx/fCX1yquARgoe5pbK7IpXWaTvjBu//gbHsfR2lk3dZbESdeg
|
||||||
|
OquPDdfp+jFPGISsDhPLzcfkZIPbz5ZVs8KdmpB/YLwyJwFqjDyjwVaDnRnuycb1
|
||||||
|
/4PlVWKp7j5SDDNCfleYvmiRn8k6P4mxVJOHKzwb/IwQcKghyqAF1w==
|
||||||
|
-----END RSA PRIVATE KEY-----
|
||||||
29
console-proxy/certs/realhostip.crt
Normal file
29
console-proxy/certs/realhostip.crt
Normal file
@ -0,0 +1,29 @@
|
|||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIE3jCCA8agAwIBAgIFAqv56tIwDQYJKoZIhvcNAQEFBQAwgcoxCzAJBgNVBAYT
|
||||||
|
AlVTMRAwDgYDVQQIEwdBcml6b25hMRMwEQYDVQQHEwpTY290dHNkYWxlMRowGAYD
|
||||||
|
VQQKExFHb0RhZGR5LmNvbSwgSW5jLjEzMDEGA1UECxMqaHR0cDovL2NlcnRpZmlj
|
||||||
|
YXRlcy5nb2RhZGR5LmNvbS9yZXBvc2l0b3J5MTAwLgYDVQQDEydHbyBEYWRkeSBT
|
||||||
|
ZWN1cmUgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxETAPBgNVBAUTCDA3OTY5Mjg3
|
||||||
|
MB4XDTA5MDIxMTA0NTc1NloXDTEyMDIwNzA1MTEyM1owWTEZMBcGA1UECgwQKi5y
|
||||||
|
ZWFsaG9zdGlwLmNvbTEhMB8GA1UECwwYRG9tYWluIENvbnRyb2wgVmFsaWRhdGVk
|
||||||
|
MRkwFwYDVQQDDBAqLnJlYWxob3N0aXAuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GN
|
||||||
|
ADCBiQKBgQC1ebxpZIlsKGV+IU0aZT1z/KrUk4cGYZKPJ6HmOb3/BAsJnfr6wk8P
|
||||||
|
yb5zrZMf/KGDW4P0nlLdRHzrJOoKiXQW5RhQWUTHFCZSKahPc7r+vFPRvBn4v6r0
|
||||||
|
UmN9+oYm8NCeW2eL59UKpshwwfgs3mvQIxVFewBFRtefrxA+8IcvvwIDAQABo4IB
|
||||||
|
vTCCAbkwDwYDVR0TAQH/BAUwAwEBADAdBgNVHSUEFjAUBggrBgEFBQcDAQYIKwYB
|
||||||
|
BQUHAwIwDgYDVR0PAQH/BAQDAgWgMDIGA1UdHwQrMCkwJ6AloCOGIWh0dHA6Ly9j
|
||||||
|
cmwuZ29kYWRkeS5jb20vZ2RzMS0yLmNybDBTBgNVHSAETDBKMEgGC2CGSAGG/W0B
|
||||||
|
BxcBMDkwNwYIKwYBBQUHAgEWK2h0dHA6Ly9jZXJ0aWZpY2F0ZXMuZ29kYWRkeS5j
|
||||||
|
b20vcmVwb3NpdG9yeS8wgYAGCCsGAQUFBwEBBHQwcjAkBggrBgEFBQcwAYYYaHR0
|
||||||
|
cDovL29jc3AuZ29kYWRkeS5jb20vMEoGCCsGAQUFBzAChj5odHRwOi8vY2VydGlm
|
||||||
|
aWNhdGVzLmdvZGFkZHkuY29tL3JlcG9zaXRvcnkvZ2RfaW50ZXJtZWRpYXRlLmNy
|
||||||
|
dDAfBgNVHSMEGDAWgBT9rGEyk2xF1uLuhV+auud2mWjM5zArBgNVHREEJDAighAq
|
||||||
|
LnJlYWxob3N0aXAuY29tgg5yZWFsaG9zdGlwLmNvbTAdBgNVHQ4EFgQUHxwmdK5w
|
||||||
|
9/YVeZ/3fHyi6nQfzoYwDQYJKoZIhvcNAQEFBQADggEBABv/XinvId6oWXJtmku+
|
||||||
|
7m90JhSVH0ycoIGjgdaIkcExQGP08MCilbUsPcbhLheSFdgn/cR4e1MP083lacoj
|
||||||
|
OGauY7b8f/cuquGkT49Ns14awPlEzRjjycQEjjLxFEuL5CFWa2t2gKRE1dSfhDQ+
|
||||||
|
fJ6GBCs1XgZLuhkKS8fPf+YmG2ZjHzYDjYoSx7paDXgEm+kbYIZdCK51lA0BUAjP
|
||||||
|
9ZMGhsu/PpAbh5U/DtcIqxY0xeqD4TeGsBzXg6uLhv+jKHDtXg5fYPe+z0n5DCEL
|
||||||
|
k0fLF4+i/pt9hVCz0QrZ28RUhXf825+EOL0Gw+Uzt+7RV2cCaJrlu4cDrDom2FRy
|
||||||
|
E8I=
|
||||||
|
-----END CERTIFICATE-----
|
||||||
10
console-proxy/certs/realhostip.csr
Normal file
10
console-proxy/certs/realhostip.csr
Normal file
@ -0,0 +1,10 @@
|
|||||||
|
-----BEGIN NEW CERTIFICATE REQUEST-----
|
||||||
|
MIIBqzCCARQCAQAwazELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRIwEAYDVQQHEwlDdXBlcnRp
|
||||||
|
bm8xDjAMBgNVBAoTBVZNT3BzMRAwDgYDVQQLEwdVbmtub3duMRkwFwYDVQQDDBAqLnJlYWxob3N0
|
||||||
|
aXAuY29tMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQC1ebxpZIlsKGV+IU0aZT1z/KrUk4cG
|
||||||
|
YZKPJ6HmOb3/BAsJnfr6wk8Pyb5zrZMf/KGDW4P0nlLdRHzrJOoKiXQW5RhQWUTHFCZSKahPc7r+
|
||||||
|
vFPRvBn4v6r0UmN9+oYm8NCeW2eL59UKpshwwfgs3mvQIxVFewBFRtefrxA+8IcvvwIDAQABoAAw
|
||||||
|
DQYJKoZIhvcNAQEFBQADgYEAVqM4RqFK3M90KjTgqQDwGjfn/HZFRyrMel+zsuQOtN70B6NrwLOD
|
||||||
|
9bWI/pxjOu29S3Jyhv++EFuNASKmK48maZDg47e0nfBWapgcm/qc3pkMCxGBnltNrssZrIsMtymV
|
||||||
|
pEfqLimOHkOmz6xDazN+vhUAJLkiE7UUgQ/2gvvJ3so=
|
||||||
|
-----END NEW CERTIFICATE REQUEST-----
|
||||||
14
console-proxy/certs/realhostip.key
Normal file
14
console-proxy/certs/realhostip.key
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
-----BEGIN PRIVATE KEY-----
|
||||||
|
MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGBALV5vGlkiWwoZX4hTRplPXP8qtST
|
||||||
|
hwZhko8noeY5vf8ECwmd+vrCTw/JvnOtkx/8oYNbg/SeUt1EfOsk6gqJdBblGFBZRMcUJlIpqE9z
|
||||||
|
uv68U9G8Gfi/qvRSY336hibw0J5bZ4vn1QqmyHDB+Czea9AjFUV7AEVG15+vED7why+/AgMBAAEC
|
||||||
|
gYBmFBPnNKYYMKDmUdUNA+WNWJK/ADzzWe8WlzR6TACTcbLDthl289WFC/YVG42mcHRpbxDKiEQU
|
||||||
|
MnIR0rHTO34Qb/2HcuyweStU2gqR6omxBvMnFpJr90nD1HcOMJzeLHsphau0/EmKKey+gk4PyieD
|
||||||
|
KqTM7LTjjHv8xPM4n+WAAQJBAOMNCeFKlJ4kMokWhU74B5/w/NGyT1BHUN0VmilHSiJC8JqS4BiI
|
||||||
|
ZpAeET3VmilO6QTGh2XVhEDGteu3uZR6ipUCQQDMnRzMgQ/50LFeIQo4IBtwlEouczMlPQF4c21R
|
||||||
|
1d720moxILVPT0NJZTQUDDmmgbL+B7CgtcCR2NlP5sKPZVADAkEAh4Xq1cy8dMBKYcVNgNtPQcqI
|
||||||
|
PWpfKR3ISI5yXB0vRNAL6Vet5zbTcUZhKDVtNSbis3UEsGYH8NorEC2z2cpjGQJANhJi9Ow6c5Mh
|
||||||
|
/DURBUn+1l5pyCKrZnDbvaALSLATLvjmFTuGjoHszy2OeKnOZmEqExWnKKE/VYuPyhy6V7i3TwJA
|
||||||
|
f8skDgtPK0OsBCa6IljPaHoWBjPc4kFkSTSS1d56hUcWSikTmiuKdLyBb85AADSZYsvHWrte4opN
|
||||||
|
dhNukMJuRA==
|
||||||
|
-----END PRIVATE KEY-----
|
||||||
BIN
console-proxy/certs/realhostip.keystore
Normal file
BIN
console-proxy/certs/realhostip.keystore
Normal file
Binary file not shown.
@ -0,0 +1,161 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (C) 2010 Cloud.com, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under the GNU General Public License v3 or later.
|
||||||
|
*
|
||||||
|
* It is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or any later version.
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.cloud.consoleproxy;
|
||||||
|
|
||||||
|
import java.io.BufferedInputStream;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.FileNotFoundException;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.net.InetSocketAddress;
|
||||||
|
import java.security.Key;
|
||||||
|
import java.security.KeyStore;
|
||||||
|
import java.security.KeyStoreException;
|
||||||
|
import java.security.cert.Certificate;
|
||||||
|
import java.security.cert.CertificateException;
|
||||||
|
import java.security.cert.CertificateFactory;
|
||||||
|
|
||||||
|
import javax.net.ssl.KeyManagerFactory;
|
||||||
|
import javax.net.ssl.SSLContext;
|
||||||
|
import javax.net.ssl.SSLParameters;
|
||||||
|
import javax.net.ssl.SSLServerSocket;
|
||||||
|
import javax.net.ssl.SSLServerSocketFactory;
|
||||||
|
import javax.net.ssl.TrustManagerFactory;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.sun.net.httpserver.HttpServer;
|
||||||
|
import com.sun.net.httpserver.HttpsConfigurator;
|
||||||
|
import com.sun.net.httpserver.HttpsParameters;
|
||||||
|
import com.sun.net.httpserver.HttpsServer;
|
||||||
|
|
||||||
|
public class ConsoleProxySecureServerFactoryImpl implements ConsoleProxyServerFactory {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ConsoleProxySecureServerFactoryImpl.class);
|
||||||
|
|
||||||
|
private SSLContext sslContext = null;
|
||||||
|
|
||||||
|
public ConsoleProxySecureServerFactoryImpl() {
|
||||||
|
try {
|
||||||
|
s_logger.info("Start initializing SSL");
|
||||||
|
|
||||||
|
char[] passphrase = "vmops.com".toCharArray();
|
||||||
|
KeyStore ks = KeyStore.getInstance("JKS");
|
||||||
|
ks.load(ConsoleProxy.class.getResourceAsStream("/realhostip.keystore"), passphrase);
|
||||||
|
//custom cert logic begins //
|
||||||
|
try {
|
||||||
|
//check if there is any custom cert added at /etc/cloud/consoleproxy/cert/
|
||||||
|
String certPath = "/etc/cloud/consoleproxy/cert/customcert";
|
||||||
|
//now generate a cert
|
||||||
|
FileInputStream fis = new FileInputStream(certPath);
|
||||||
|
BufferedInputStream bis = new BufferedInputStream(fis);
|
||||||
|
CertificateFactory cf = CertificateFactory.getInstance("X.509");
|
||||||
|
|
||||||
|
while (bis.available() > 1) {
|
||||||
|
Certificate cert = cf.generateCertificate(bis);
|
||||||
|
if(s_logger.isDebugEnabled()){
|
||||||
|
s_logger.debug("The custom certificate generated is:"+cert.toString());
|
||||||
|
}
|
||||||
|
//get the existing cert chain
|
||||||
|
Certificate[] chain = ks.getCertificateChain("realhostip");
|
||||||
|
Certificate[] newChain = new Certificate[chain.length+1];
|
||||||
|
newChain[0] = cert;//make custom cert the default
|
||||||
|
System.arraycopy(chain, 0, newChain, 1, chain.length);
|
||||||
|
Key key = ks.getKey("realhostip", passphrase);
|
||||||
|
ks.setKeyEntry("realhostip", key, passphrase, newChain);
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Custom SSL cert added successfully to the keystore cert chain");
|
||||||
|
}
|
||||||
|
} catch (FileNotFoundException fnf) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Unable to find the custom cert file at /etc/cloud/consoleproxy/cert/customcert",fnf);
|
||||||
|
} catch (IOException ioe){
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Unable to read the custom cert file at /etc/cloud/consoleproxy/cert/customcert",ioe);
|
||||||
|
}catch (KeyStoreException kse){
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Unable to add custom cert file at /etc/cloud/consoleproxy/cert/customcert to the keystore",kse);
|
||||||
|
}catch (CertificateException ce){
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Unable to generate certificate from the file /etc/cloud/consoleproxy/cert/customcert",ce);
|
||||||
|
}catch (Exception e){
|
||||||
|
//catch other excpns
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Unable to add custom cert file at /etc/cloud/consoleproxy/cert/customcert to the keystore",e);
|
||||||
|
}
|
||||||
|
//custom cert logic ends //
|
||||||
|
|
||||||
|
s_logger.info("SSL certificate loaded");
|
||||||
|
|
||||||
|
KeyManagerFactory kmf = KeyManagerFactory.getInstance("SunX509");
|
||||||
|
kmf.init(ks, passphrase);
|
||||||
|
s_logger.info("Key manager factory is initialized");
|
||||||
|
|
||||||
|
TrustManagerFactory tmf = TrustManagerFactory.getInstance("SunX509");
|
||||||
|
tmf.init(ks);
|
||||||
|
s_logger.info("Trust manager factory is initialized");
|
||||||
|
|
||||||
|
sslContext = SSLContext.getInstance("TLS");
|
||||||
|
sslContext.init(kmf.getKeyManagers(), tmf.getTrustManagers(), null);
|
||||||
|
s_logger.info("SSL context is initialized");
|
||||||
|
} catch (Exception ioe) {
|
||||||
|
s_logger.error(ioe.toString(), ioe);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public HttpServer createHttpServerInstance(int port) throws IOException {
|
||||||
|
try {
|
||||||
|
HttpsServer server = HttpsServer.create(new InetSocketAddress(port), 5);
|
||||||
|
server.setHttpsConfigurator (new HttpsConfigurator(sslContext) {
|
||||||
|
@Override
|
||||||
|
public void configure (HttpsParameters params) {
|
||||||
|
|
||||||
|
// get the remote address if needed
|
||||||
|
InetSocketAddress remote = params.getClientAddress();
|
||||||
|
SSLContext c = getSSLContext();
|
||||||
|
|
||||||
|
// get the default parameters
|
||||||
|
SSLParameters sslparams = c.getDefaultSSLParameters();
|
||||||
|
|
||||||
|
params.setSSLParameters(sslparams);
|
||||||
|
// statement above could throw IAE if any params invalid.
|
||||||
|
// eg. if app has a UI and parameters supplied by a user.
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
s_logger.info("create HTTPS server instance on port: " + port);
|
||||||
|
return server;
|
||||||
|
} catch (Exception ioe) {
|
||||||
|
s_logger.error(ioe.toString(), ioe);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
public SSLServerSocket createSSLServerSocket(int port) throws IOException {
|
||||||
|
try {
|
||||||
|
SSLServerSocket srvSock = null;
|
||||||
|
SSLServerSocketFactory ssf = sslContext.getServerSocketFactory();
|
||||||
|
srvSock = (SSLServerSocket) ssf.createServerSocket(port);
|
||||||
|
|
||||||
|
s_logger.info("create SSL server socket on port: " + port);
|
||||||
|
return srvSock;
|
||||||
|
} catch (Exception ioe) {
|
||||||
|
s_logger.error(ioe.toString(), ioe);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,48 @@
|
|||||||
|
package com.cloud.hypervisor.xen.resource;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.resource.ServerResource;
|
||||||
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
|
import com.cloud.utils.script.Script;
|
||||||
|
|
||||||
|
|
||||||
|
@Local(value=ServerResource.class)
|
||||||
|
public class XenServer56FP1PremiumResource extends XenServer56Resource {
|
||||||
|
private final static Logger s_logger = Logger.getLogger(XenServer56FP1PremiumResource.class);
|
||||||
|
public XenServer56FP1PremiumResource() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected String getGuestOsType(String stdType, boolean bootFromCD) {
|
||||||
|
return CitrixHelper.getXenServer56FP1GuestOsType(stdType);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<File> getPatchFiles() {
|
||||||
|
List<File> files = new ArrayList<File>();
|
||||||
|
String patch = "scripts/vm/hypervisor/xenserver/xenserver56fp1/patch";
|
||||||
|
String patchfilePath = Script.findScript("" , patch);
|
||||||
|
if ( patchfilePath == null ) {
|
||||||
|
throw new CloudRuntimeException("Unable to find patch file " + patch);
|
||||||
|
}
|
||||||
|
File file = new File(patchfilePath);
|
||||||
|
files.add(file);
|
||||||
|
patch = "premium-scripts/vm/hypervisor/xenserver/xenserver56fp1/patch";
|
||||||
|
patchfilePath = Script.findScript("" , patch);
|
||||||
|
if (patchfilePath == null) {
|
||||||
|
throw new CloudRuntimeException("Unable to find patch file " + patch);
|
||||||
|
}
|
||||||
|
file = new File(patchfilePath);
|
||||||
|
files.add(file);
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,703 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (C) 2010 Cloud.com, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under the GNU General Public License v3 or later.
|
||||||
|
*
|
||||||
|
* It is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or any later version.
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
package com.cloud.hypervisor.xen.resource;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.net.URI;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.Iterator;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
import org.apache.xmlrpc.XmlRpcException;
|
||||||
|
|
||||||
|
import com.cloud.agent.api.Answer;
|
||||||
|
import com.cloud.agent.api.CheckOnHostAnswer;
|
||||||
|
import com.cloud.agent.api.CheckOnHostCommand;
|
||||||
|
import com.cloud.agent.api.Command;
|
||||||
|
import com.cloud.agent.api.FenceAnswer;
|
||||||
|
import com.cloud.agent.api.FenceCommand;
|
||||||
|
import com.cloud.agent.api.NetworkUsageAnswer;
|
||||||
|
import com.cloud.agent.api.NetworkUsageCommand;
|
||||||
|
import com.cloud.agent.api.PoolEjectCommand;
|
||||||
|
import com.cloud.agent.api.SetupAnswer;
|
||||||
|
import com.cloud.agent.api.SetupCommand;
|
||||||
|
import com.cloud.agent.api.StartupCommand;
|
||||||
|
import com.cloud.agent.api.storage.CopyVolumeAnswer;
|
||||||
|
import com.cloud.agent.api.storage.CopyVolumeCommand;
|
||||||
|
import com.cloud.agent.api.storage.PrimaryStorageDownloadAnswer;
|
||||||
|
import com.cloud.agent.api.storage.PrimaryStorageDownloadCommand;
|
||||||
|
import com.cloud.agent.api.to.StorageFilerTO;
|
||||||
|
import com.cloud.exception.InternalErrorException;
|
||||||
|
import com.cloud.resource.ServerResource;
|
||||||
|
import com.cloud.storage.Storage.StoragePoolType;
|
||||||
|
import com.cloud.utils.NumbersUtil;
|
||||||
|
import com.cloud.utils.Pair;
|
||||||
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
|
import com.cloud.utils.script.Script;
|
||||||
|
import com.xensource.xenapi.Bond;
|
||||||
|
import com.xensource.xenapi.Connection;
|
||||||
|
import com.xensource.xenapi.Host;
|
||||||
|
import com.xensource.xenapi.Network;
|
||||||
|
import com.xensource.xenapi.PBD;
|
||||||
|
import com.xensource.xenapi.PIF;
|
||||||
|
import com.xensource.xenapi.Pool;
|
||||||
|
import com.xensource.xenapi.SR;
|
||||||
|
import com.xensource.xenapi.Types;
|
||||||
|
import com.xensource.xenapi.Types.IpConfigurationMode;
|
||||||
|
import com.xensource.xenapi.Types.XenAPIException;
|
||||||
|
import com.xensource.xenapi.VDI;
|
||||||
|
import com.xensource.xenapi.VLAN;
|
||||||
|
import com.xensource.xenapi.VM;
|
||||||
|
|
||||||
|
@Local(value = ServerResource.class)
|
||||||
|
public class XenServer56Resource extends XenServerResource {
|
||||||
|
private final static Logger s_logger = Logger.getLogger(XenServer56Resource.class);
|
||||||
|
protected int _heartbeatInterval = 60;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Answer executeRequest(Command cmd) {
|
||||||
|
if (cmd instanceof FenceCommand) {
|
||||||
|
return execute((FenceCommand) cmd);
|
||||||
|
} else if (cmd instanceof PoolEjectCommand) {
|
||||||
|
return execute((PoolEjectCommand) cmd);
|
||||||
|
} else if (cmd instanceof NetworkUsageCommand) {
|
||||||
|
return execute((NetworkUsageCommand) cmd);
|
||||||
|
} else {
|
||||||
|
return super.executeRequest(cmd);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected String getGuestOsType(String stdType, boolean bootFromCD) {
|
||||||
|
return CitrixHelper.getXenServerGuestOsType(stdType);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected List<File> getPatchFiles() {
|
||||||
|
List<File> files = new ArrayList<File>();
|
||||||
|
String patch = "scripts/vm/hypervisor/xenserver/xenserver56/patch";
|
||||||
|
String patchfilePath = Script.findScript("", patch);
|
||||||
|
if (patchfilePath == null) {
|
||||||
|
throw new CloudRuntimeException("Unable to find patch file " + patch);
|
||||||
|
}
|
||||||
|
File file = new File(patchfilePath);
|
||||||
|
files.add(file);
|
||||||
|
patch = "premium-scripts/vm/hypervisor/xenserver/xenserver56/patch";
|
||||||
|
patchfilePath = Script.findScript("", patch);
|
||||||
|
if (patchfilePath == null) {
|
||||||
|
throw new CloudRuntimeException("Unable to find patch file " + patch);
|
||||||
|
}
|
||||||
|
file = new File(patchfilePath);
|
||||||
|
files.add(file);
|
||||||
|
return files;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected String callHostPluginPremium(Connection conn, String cmd, String... params) {
|
||||||
|
return callHostPlugin(conn, "vmopspremium", cmd, params);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void disableVlanNetwork(Connection conn, Network network) {
|
||||||
|
try {
|
||||||
|
if (!network.getNameLabel(conn).startsWith("VLAN")) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
String bridge = network.getBridge(conn).trim();
|
||||||
|
for (PIF pif : network.getPIFs(conn)) {
|
||||||
|
if (pif.getHost(conn).getUuid(conn).equalsIgnoreCase(_host.uuid)) {
|
||||||
|
VLAN vlan = pif.getVLANMasterOf(conn);
|
||||||
|
if (vlan != null) {
|
||||||
|
String vlannum = pif.getVLAN(conn).toString();
|
||||||
|
String device = pif.getDevice(conn).trim();
|
||||||
|
if (vlannum.equals("-1")) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
vlan.destroy(conn);
|
||||||
|
Host host = Host.getByUuid(conn, _host.uuid);
|
||||||
|
host.forgetDataSourceArchives(conn, "pif_" + bridge + "_tx");
|
||||||
|
host.forgetDataSourceArchives(conn, "pif_" + bridge + "_rx");
|
||||||
|
host.forgetDataSourceArchives(conn, "pif_" + device + "." + vlannum + "_tx");
|
||||||
|
host.forgetDataSourceArchives(conn, "pif_" + device + "." + vlannum + "_rx");
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
s_logger.debug("Catch Exception: " + e.getClass().getName() + ": failed to destory VLAN " + device + " on host " + _host.uuid
|
||||||
|
+ " due to " + e.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
String msg = "Unable to disable VLAN network due to " + e.toString();
|
||||||
|
s_logger.warn(msg, e);
|
||||||
|
} catch (Exception e) {
|
||||||
|
String msg = "Unable to disable VLAN network due to " + e.getMessage();
|
||||||
|
s_logger.warn(msg, e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected SR getStorageRepository(Connection conn, StorageFilerTO pool) {
|
||||||
|
try {
|
||||||
|
SR sr = super.getStorageRepository(conn, pool);
|
||||||
|
|
||||||
|
if (pool.getType() != StoragePoolType.IscsiLUN && pool.getType() != StoragePoolType.NetworkFilesystem) {
|
||||||
|
return sr;
|
||||||
|
}
|
||||||
|
setupHeartbeatSr(conn, sr, false);
|
||||||
|
return sr;
|
||||||
|
} catch (Exception e) {
|
||||||
|
String msg = "Catch Exception " + e.getClass().getName() + ", Unable to setup heartbeat sr on " + pool.getUuid() + " due to " + e.toString();
|
||||||
|
s_logger.warn(msg);
|
||||||
|
throw new CloudRuntimeException(msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected String callHostPluginThroughMaster(Connection conn, String plugin, String cmd, String... params) {
|
||||||
|
Map<String, String> args = new HashMap<String, String>();
|
||||||
|
|
||||||
|
try {
|
||||||
|
Map<Pool, Pool.Record> poolRecs = Pool.getAllRecords(conn);
|
||||||
|
if (poolRecs.size() != 1) {
|
||||||
|
throw new CloudRuntimeException("There are " + poolRecs.size() + " pool for host :" + _host.uuid);
|
||||||
|
}
|
||||||
|
Host master = poolRecs.values().iterator().next().master;
|
||||||
|
for (int i = 0; i < params.length; i += 2) {
|
||||||
|
args.put(params[i], params[i + 1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (s_logger.isTraceEnabled()) {
|
||||||
|
s_logger.trace("callHostPlugin executing for command " + cmd + " with " + getArgsString(args));
|
||||||
|
}
|
||||||
|
String result = master.callPlugin(conn, plugin, cmd, args);
|
||||||
|
if (s_logger.isTraceEnabled()) {
|
||||||
|
s_logger.trace("callHostPlugin Result: " + result);
|
||||||
|
}
|
||||||
|
return result.replace("\n", "");
|
||||||
|
} catch (Types.HandleInvalid e) {
|
||||||
|
s_logger.warn("callHostPlugin failed for cmd: " + cmd + " with args " + getArgsString(args)
|
||||||
|
+ " due to HandleInvalid clazz:" + e.clazz + ", handle:" + e.handle);
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
s_logger.warn("callHostPlugin failed for cmd: " + cmd + " with args " + getArgsString(args) + " due to "
|
||||||
|
+ e.toString(), e);
|
||||||
|
} catch (XmlRpcException e) {
|
||||||
|
s_logger.warn("callHostPlugin failed for cmd: " + cmd + " with args " + getArgsString(args) + " due to "
|
||||||
|
+ e.getMessage(), e);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected String setupHeartbeatSr(Connection conn, SR sr, boolean force) throws XenAPIException, XmlRpcException {
|
||||||
|
Host host = Host.getByUuid(conn, _host.uuid);
|
||||||
|
SR.Record srRec = sr.getRecord(conn);
|
||||||
|
String srUuid = srRec.uuid;
|
||||||
|
if (!srRec.shared || (!SRType.LVMOISCSI.equals(srRec.type) && !SRType.NFS.equals(srRec.type))) {
|
||||||
|
return srUuid;
|
||||||
|
}
|
||||||
|
Set<String> tags = host.getTags(conn);
|
||||||
|
if (force || !tags.contains("cloud-heartbeat-" + srUuid)) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Setting up the heartbeat sr for host " + _host.ip + " and sr " + srUuid);
|
||||||
|
}
|
||||||
|
Set<PBD> pbds = sr.getPBDs(conn);
|
||||||
|
for (PBD pbd : pbds) {
|
||||||
|
PBD.Record pbdr = pbd.getRecord(conn);
|
||||||
|
if (!pbdr.currentlyAttached && pbdr.host.getUuid(conn).equals(_host.uuid)) {
|
||||||
|
pbd.plug(conn);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String result = callHostPluginThroughMaster(conn, "vmopspremium", "setup_heartbeat_sr", "host", _host.uuid,
|
||||||
|
"sr", srUuid);
|
||||||
|
if (result == null || !result.split("#")[0].equals("0")) {
|
||||||
|
throw new CloudRuntimeException("Unable to setup heartbeat sr on SR " + srUuid + " due to " + result);
|
||||||
|
}
|
||||||
|
result = callHostPluginPremium(conn, "setup_heartbeat_file", "host", _host.uuid, "sr", srUuid);
|
||||||
|
if (result == null || !result.split("#")[0].equals("0")) {
|
||||||
|
throw new CloudRuntimeException("Unable to setup heartbeat file entry on SR " + srUuid + " due to "
|
||||||
|
+ result);
|
||||||
|
}
|
||||||
|
if (!tags.contains("cloud-heartbeat-" + srUuid)) {
|
||||||
|
tags.add("cloud-heartbeat-" + srUuid);
|
||||||
|
host.setTags(conn, tags);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return srUuid;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected String networkUsage(Connection conn, final String privateIpAddress, final String option, final String vif) {
|
||||||
|
String args = null;
|
||||||
|
if (option.equals("get")) {
|
||||||
|
args = "-g";
|
||||||
|
} else if (option.equals("create")) {
|
||||||
|
args = "-c";
|
||||||
|
} else if (option.equals("reset")) {
|
||||||
|
args = "-r";
|
||||||
|
} else if (option.equals("addVif")) {
|
||||||
|
args = "-a";
|
||||||
|
args += vif;
|
||||||
|
} else if (option.equals("deleteVif")) {
|
||||||
|
args = "-d";
|
||||||
|
args += vif;
|
||||||
|
}
|
||||||
|
|
||||||
|
args += " -i ";
|
||||||
|
args += privateIpAddress;
|
||||||
|
return callHostPlugin(conn, "vmops", "networkUsage", "args", args);
|
||||||
|
}
|
||||||
|
String copy_vhd_to_secondarystorage(Connection conn, String mountpoint, String vdiuuid, String sruuid) {
|
||||||
|
String results = callHostPluginAsync(conn, "vmopspremium", "copy_vhd_to_secondarystorage",
|
||||||
|
2 * 60 * 60 * 1000, "mountpoint", mountpoint, "vdiuuid", vdiuuid, "sruuid", sruuid);
|
||||||
|
|
||||||
|
if (results == null || results.isEmpty()) {
|
||||||
|
String msg = "copy_vhd_to_secondarystorage return null";
|
||||||
|
s_logger.warn(msg);
|
||||||
|
throw new CloudRuntimeException(msg);
|
||||||
|
}
|
||||||
|
String[] tmp = results.split("#");
|
||||||
|
String status = tmp[0];
|
||||||
|
if (status.equals("0")) {
|
||||||
|
return tmp[1];
|
||||||
|
} else {
|
||||||
|
s_logger.warn(tmp[1]);
|
||||||
|
throw new CloudRuntimeException(tmp[1]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
String copy_vhd_from_secondarystorage(Connection conn, String mountpoint, String sruuid) {
|
||||||
|
String results = callHostPluginAsync(conn, "vmopspremium", "copy_vhd_from_secondarystorage",
|
||||||
|
2 * 60 * 60 * 1000, "mountpoint", mountpoint, "sruuid", sruuid);
|
||||||
|
|
||||||
|
if (results == null || results.isEmpty()) {
|
||||||
|
String msg = "copy_vhd_from_secondarystorage return null";
|
||||||
|
s_logger.warn(msg);
|
||||||
|
throw new CloudRuntimeException(msg);
|
||||||
|
}
|
||||||
|
String[] tmp = results.split("#");
|
||||||
|
String status = tmp[0];
|
||||||
|
if (status.equals("0")) {
|
||||||
|
return tmp[1];
|
||||||
|
} else {
|
||||||
|
s_logger.warn(tmp[1]);
|
||||||
|
throw new CloudRuntimeException(tmp[1]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CopyVolumeAnswer execute(final CopyVolumeCommand cmd) {
|
||||||
|
Connection conn = getConnection();
|
||||||
|
String volumeUUID = cmd.getVolumePath();
|
||||||
|
StorageFilerTO poolTO = cmd.getPool();
|
||||||
|
String secondaryStorageURL = cmd.getSecondaryStorageURL();
|
||||||
|
boolean toSecondaryStorage = cmd.toSecondaryStorage();
|
||||||
|
try {
|
||||||
|
URI uri = new URI(secondaryStorageURL);
|
||||||
|
String remoteVolumesMountPath = uri.getHost() + ":" + uri.getPath() + "/volumes/";
|
||||||
|
String volumeFolder = String.valueOf(cmd.getVolumeId()) + "/";
|
||||||
|
String mountpoint = remoteVolumesMountPath + volumeFolder;
|
||||||
|
SR primaryStoragePool = getStorageRepository(conn, poolTO);
|
||||||
|
String srUuid = primaryStoragePool.getUuid(conn);
|
||||||
|
if (toSecondaryStorage) {
|
||||||
|
VDI vdi = VDI.getByUuid(conn, volumeUUID);
|
||||||
|
String vdiParent = vdi.getSmConfig(conn).get("vhd-parent");
|
||||||
|
if( vdiParent != null && !vdiParent.isEmpty() ) {
|
||||||
|
return super.execute(cmd);
|
||||||
|
}
|
||||||
|
// Create the volume folder
|
||||||
|
if (!createSecondaryStorageFolder(conn, remoteVolumesMountPath, volumeFolder)) {
|
||||||
|
throw new InternalErrorException("Failed to create the volume folder.");
|
||||||
|
}
|
||||||
|
String uuid = copy_vhd_to_secondarystorage(conn, mountpoint, volumeUUID, srUuid);
|
||||||
|
return new CopyVolumeAnswer(cmd, true, null, null, uuid);
|
||||||
|
} else {
|
||||||
|
String uuid = copy_vhd_from_secondarystorage(conn, mountpoint, srUuid);
|
||||||
|
deleteSecondaryStorageFolder(conn, remoteVolumesMountPath, volumeFolder);
|
||||||
|
return new CopyVolumeAnswer(cmd, true, null, srUuid, uuid);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
String msg = "Catch Exception " + e.getClass().getName() + " due to " + e.toString();
|
||||||
|
s_logger.warn(msg, e);
|
||||||
|
return new CopyVolumeAnswer(cmd, false, msg, null, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public PrimaryStorageDownloadAnswer execute(final PrimaryStorageDownloadCommand cmd) {
|
||||||
|
String tmplturl = cmd.getUrl();
|
||||||
|
int index = tmplturl.lastIndexOf("/");
|
||||||
|
String tmplpath = tmplturl.substring(0, index);
|
||||||
|
String poolName = cmd.getPoolUuid();
|
||||||
|
try {
|
||||||
|
URI uri = new URI(tmplpath);
|
||||||
|
String mountpoint = uri.getHost() + ":" + uri.getPath();
|
||||||
|
Connection conn = getConnection();
|
||||||
|
SR poolsr = null;
|
||||||
|
Set<SR> srs = SR.getByNameLabel(conn, poolName);
|
||||||
|
if (srs.size() != 1) {
|
||||||
|
String msg = "There are " + srs.size() + " SRs with same name: " + poolName;
|
||||||
|
s_logger.warn(msg);
|
||||||
|
return new PrimaryStorageDownloadAnswer(msg);
|
||||||
|
} else {
|
||||||
|
poolsr = srs.iterator().next();
|
||||||
|
}
|
||||||
|
String pUuid = poolsr.getUuid(conn);
|
||||||
|
String uuid = copy_vhd_from_secondarystorage(conn, mountpoint, pUuid);
|
||||||
|
VDI tmpl = getVDIbyUuid(conn, uuid);
|
||||||
|
VDI snapshotvdi = tmpl.snapshot(conn, new HashMap<String, String>());
|
||||||
|
snapshotvdi.setNameLabel(conn, "Template " + cmd.getName());
|
||||||
|
tmpl.destroy(conn);
|
||||||
|
String parentuuid = snapshotvdi.getSmConfig(conn).get("vhd-parent");
|
||||||
|
VDI parent = getVDIbyUuid(conn, parentuuid);
|
||||||
|
Long phySize = parent.getPhysicalUtilisation(conn);
|
||||||
|
return new PrimaryStorageDownloadAnswer(snapshotvdi.getUuid(conn), phySize);
|
||||||
|
} catch (Exception e) {
|
||||||
|
String msg = "Catch Exception " + e.getClass().getName() + " on host:" + _host.uuid + " for template: "
|
||||||
|
+ tmplturl + " due to " + e.toString();
|
||||||
|
s_logger.warn(msg, e);
|
||||||
|
return new PrimaryStorageDownloadAnswer(msg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected NetworkUsageAnswer execute(NetworkUsageCommand cmd) {
|
||||||
|
Connection conn = getConnection();
|
||||||
|
if(cmd.getOption()!=null && cmd.getOption().equals("create") ){
|
||||||
|
String result = networkUsage(conn, cmd.getPrivateIP(), "create", null);
|
||||||
|
NetworkUsageAnswer answer = new NetworkUsageAnswer(cmd, result, 0L, 0L);
|
||||||
|
return answer;
|
||||||
|
}
|
||||||
|
long[] stats = getNetworkStats(conn, cmd.getPrivateIP());
|
||||||
|
NetworkUsageAnswer answer = new NetworkUsageAnswer(cmd, "", stats[0], stats[1]);
|
||||||
|
return answer;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Answer execute(PoolEjectCommand cmd) {
|
||||||
|
Connection conn = getConnection();
|
||||||
|
String hostuuid = cmd.getHostuuid();
|
||||||
|
try {
|
||||||
|
Host host = Host.getByUuid(conn, hostuuid);
|
||||||
|
// remove all tags cloud stack add before eject
|
||||||
|
Host.Record hr = host.getRecord(conn);
|
||||||
|
Iterator<String> it = hr.tags.iterator();
|
||||||
|
while (it.hasNext()) {
|
||||||
|
String tag = it.next();
|
||||||
|
if (tag.contains("cloud-heartbeat-")) {
|
||||||
|
it.remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return super.execute(cmd);
|
||||||
|
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
String msg = "Unable to eject host " + _host.uuid + " due to " + e.toString();
|
||||||
|
s_logger.warn(msg, e);
|
||||||
|
return new Answer(cmd, false, msg);
|
||||||
|
} catch (Exception e) {
|
||||||
|
s_logger.warn("Unable to eject host " + _host.uuid, e);
|
||||||
|
String msg = "Unable to eject host " + _host.uuid + " due to " + e.getMessage();
|
||||||
|
s_logger.warn(msg, e);
|
||||||
|
return new Answer(cmd, false, msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
protected FenceAnswer execute(FenceCommand cmd) {
|
||||||
|
Connection conn = getConnection();
|
||||||
|
try {
|
||||||
|
String result = callHostPluginPremium(conn, "check_heartbeat", "host", cmd.getHostGuid(), "interval",
|
||||||
|
Integer.toString(_heartbeatInterval * 2));
|
||||||
|
if (!result.contains("> DEAD <")) {
|
||||||
|
s_logger.debug("Heart beat is still going so unable to fence");
|
||||||
|
return new FenceAnswer(cmd, false, "Heartbeat is still going on unable to fence");
|
||||||
|
}
|
||||||
|
|
||||||
|
Set<VM> vms = VM.getByNameLabel(conn, cmd.getVmName());
|
||||||
|
for (VM vm : vms) {
|
||||||
|
vm.powerStateReset(conn);
|
||||||
|
vm.destroy(conn);
|
||||||
|
}
|
||||||
|
XenServerConnectionPool.PoolSyncDB(conn);
|
||||||
|
return new FenceAnswer(cmd);
|
||||||
|
} catch (XmlRpcException e) {
|
||||||
|
s_logger.warn("Unable to fence", e);
|
||||||
|
return new FenceAnswer(cmd, false, e.getMessage());
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
s_logger.warn("Unable to fence", e);
|
||||||
|
return new FenceAnswer(cmd, false, e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean transferManagementNetwork(Connection conn, Host host, PIF src, PIF.Record spr, PIF dest)
|
||||||
|
throws XmlRpcException, XenAPIException {
|
||||||
|
dest.reconfigureIp(conn, spr.ipConfigurationMode, spr.IP, spr.netmask, spr.gateway, spr.DNS);
|
||||||
|
Host.managementReconfigure(conn, dest);
|
||||||
|
String hostUuid = null;
|
||||||
|
int count = 0;
|
||||||
|
while (count < 10) {
|
||||||
|
try {
|
||||||
|
Thread.sleep(10000);
|
||||||
|
hostUuid = host.getUuid(conn);
|
||||||
|
if (hostUuid != null) {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} catch (XmlRpcException e) {
|
||||||
|
s_logger.debug("Waiting for host to come back: " + e.getMessage());
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
s_logger.debug("Waiting for host to come back: " + e.getMessage());
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
s_logger.debug("Gotta run");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (hostUuid == null) {
|
||||||
|
s_logger.warn("Unable to transfer the management network from " + spr.uuid);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
src.reconfigureIp(conn, IpConfigurationMode.NONE, null, null, null, null);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected SetupAnswer execute(SetupCommand cmd) {
|
||||||
|
Connection conn = getConnection();
|
||||||
|
try {
|
||||||
|
callHostPluginPremium(conn, "setupXenServer");
|
||||||
|
cleanupTemplateSR(conn);
|
||||||
|
Host host = Host.getByUuid(conn, _host.uuid);
|
||||||
|
try {
|
||||||
|
if (cmd.useMultipath()) {
|
||||||
|
// the config value is set to true
|
||||||
|
host.addToOtherConfig(conn, "multipathing", "true");
|
||||||
|
host.addToOtherConfig(conn, "multipathhandle", "dmp");
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (Types.MapDuplicateKey e) {
|
||||||
|
s_logger.debug("multipath is already set");
|
||||||
|
}
|
||||||
|
|
||||||
|
String result = callHostPlugin(conn, "vmops", "setup_iscsi", "uuid", _host.uuid);
|
||||||
|
if (!result.contains("> DONE <")) {
|
||||||
|
s_logger.warn("Unable to setup iscsi: " + result);
|
||||||
|
return new SetupAnswer(cmd, result);
|
||||||
|
}
|
||||||
|
|
||||||
|
Pair<PIF, PIF.Record> mgmtPif = null;
|
||||||
|
Set<PIF> hostPifs = host.getPIFs(conn);
|
||||||
|
for (PIF pif : hostPifs) {
|
||||||
|
PIF.Record rec = pif.getRecord(conn);
|
||||||
|
if (rec.management) {
|
||||||
|
if (rec.VLAN != null && rec.VLAN != -1) {
|
||||||
|
String msg = new StringBuilder(
|
||||||
|
"Unsupported configuration. Management network is on a VLAN. host=").append(
|
||||||
|
_host.uuid).append("; pif=").append(rec.uuid).append("; vlan=").append(rec.VLAN)
|
||||||
|
.toString();
|
||||||
|
s_logger.warn(msg);
|
||||||
|
return new SetupAnswer(cmd, msg);
|
||||||
|
}
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Management network is on pif=" + rec.uuid);
|
||||||
|
}
|
||||||
|
mgmtPif = new Pair<PIF, PIF.Record>(pif, rec);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (mgmtPif == null) {
|
||||||
|
String msg = "Unable to find management network for " + _host.uuid;
|
||||||
|
s_logger.warn(msg);
|
||||||
|
return new SetupAnswer(cmd, msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
Map<Network, Network.Record> networks = Network.getAllRecords(conn);
|
||||||
|
for (Network.Record network : networks.values()) {
|
||||||
|
if (network.nameLabel.equals("cloud-private")) {
|
||||||
|
for (PIF pif : network.PIFs) {
|
||||||
|
PIF.Record pr = pif.getRecord(conn);
|
||||||
|
if (_host.uuid.equals(pr.host.getUuid(conn))) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Found a network called cloud-private. host=" + _host.uuid
|
||||||
|
+ "; Network=" + network.uuid + "; pif=" + pr.uuid);
|
||||||
|
}
|
||||||
|
if (pr.VLAN != null && pr.VLAN != -1) {
|
||||||
|
String msg = new StringBuilder(
|
||||||
|
"Unsupported configuration. Network cloud-private is on a VLAN. Network=")
|
||||||
|
.append(network.uuid).append(" ; pif=").append(pr.uuid).toString();
|
||||||
|
s_logger.warn(msg);
|
||||||
|
return new SetupAnswer(cmd, msg);
|
||||||
|
}
|
||||||
|
if (!pr.management && pr.bondMasterOf != null && pr.bondMasterOf.size() > 0) {
|
||||||
|
if (pr.bondMasterOf.size() > 1) {
|
||||||
|
String msg = new StringBuilder(
|
||||||
|
"Unsupported configuration. Network cloud-private has more than one bond. Network=")
|
||||||
|
.append(network.uuid).append("; pif=").append(pr.uuid).toString();
|
||||||
|
s_logger.warn(msg);
|
||||||
|
return new SetupAnswer(cmd, msg);
|
||||||
|
}
|
||||||
|
Bond bond = pr.bondMasterOf.iterator().next();
|
||||||
|
Set<PIF> slaves = bond.getSlaves(conn);
|
||||||
|
for (PIF slave : slaves) {
|
||||||
|
PIF.Record spr = slave.getRecord(conn);
|
||||||
|
if (spr.management) {
|
||||||
|
if (!transferManagementNetwork(conn, host, slave, spr, pif)) {
|
||||||
|
String msg = new StringBuilder(
|
||||||
|
"Unable to transfer management network. slave=" + spr.uuid
|
||||||
|
+ "; master=" + pr.uuid + "; host=" + _host.uuid)
|
||||||
|
.toString();
|
||||||
|
s_logger.warn(msg);
|
||||||
|
return new SetupAnswer(cmd, msg);
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return new SetupAnswer(cmd, false);
|
||||||
|
|
||||||
|
} catch (XmlRpcException e) {
|
||||||
|
s_logger.warn("Unable to setup", e);
|
||||||
|
return new SetupAnswer(cmd, e.getMessage());
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
s_logger.warn("Unable to setup", e);
|
||||||
|
return new SetupAnswer(cmd, e.getMessage());
|
||||||
|
} catch (Exception e) {
|
||||||
|
s_logger.warn("Unable to setup", e);
|
||||||
|
return new SetupAnswer(cmd, e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void cleanupTemplateSR(Connection conn) {
|
||||||
|
Set<PBD> pbds = null;
|
||||||
|
try {
|
||||||
|
Host host = Host.getByUuid(conn, _host.uuid);
|
||||||
|
pbds = host.getPBDs(conn);
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
s_logger.warn("Unable to get the SRs " + e.toString(), e);
|
||||||
|
throw new CloudRuntimeException("Unable to get SRs " + e.toString(), e);
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new CloudRuntimeException("Unable to get SRs " + e.getMessage(), e);
|
||||||
|
}
|
||||||
|
for (PBD pbd : pbds) {
|
||||||
|
SR sr = null;
|
||||||
|
SR.Record srRec = null;
|
||||||
|
try {
|
||||||
|
sr = pbd.getSR(conn);
|
||||||
|
srRec = sr.getRecord(conn);
|
||||||
|
} catch (Exception e) {
|
||||||
|
s_logger.warn("pbd.getSR get Exception due to " + e.toString());
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
String type = srRec.type;
|
||||||
|
if (srRec.shared) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (SRType.NFS.equals(type) || (SRType.ISO.equals(type) && srRec.nameDescription.contains("template"))) {
|
||||||
|
try {
|
||||||
|
pbd.unplug(conn);
|
||||||
|
pbd.destroy(conn);
|
||||||
|
sr.forget(conn);
|
||||||
|
} catch (Exception e) {
|
||||||
|
s_logger.warn("forget SR catch Exception due to " + e.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public StartupCommand[] initialize() {
|
||||||
|
pingxenserver();
|
||||||
|
StartupCommand[] cmds = super.initialize();
|
||||||
|
Connection conn = getConnection();
|
||||||
|
try {
|
||||||
|
Host host = Host.getByUuid(conn, _host.uuid);
|
||||||
|
Set<String> tags = host.getTags(conn);
|
||||||
|
Iterator<String> it = tags.iterator();
|
||||||
|
while (it.hasNext()) {
|
||||||
|
String heartbeatTag = it.next();
|
||||||
|
if (heartbeatTag.contains("cloud-heartbeat-")) {
|
||||||
|
s_logger.debug("Removing heatbeat tag: " + heartbeatTag);
|
||||||
|
it.remove();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
host.setTags(conn, tags);
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
throw new CloudRuntimeException("Unable to setup heartbeat", e);
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new CloudRuntimeException("Unable to setup heartbeat", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
String result = callHostPluginPremium(conn, "heartbeat", "host", _host.uuid, "interval", Integer
|
||||||
|
.toString(_heartbeatInterval));
|
||||||
|
if (result == null || !result.contains("> DONE <")) {
|
||||||
|
s_logger.warn("Unable to launch the heartbeat process on " + _host.ip);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return cmds;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected CheckOnHostAnswer execute(CheckOnHostCommand cmd) {
|
||||||
|
Connection conn = getConnection();
|
||||||
|
try {
|
||||||
|
String result = callHostPluginPremium(conn, "check_heartbeat", "host", cmd.getHost().getGuid(), "interval",
|
||||||
|
Integer.toString(_heartbeatInterval * 2));
|
||||||
|
if (result == null) {
|
||||||
|
return new CheckOnHostAnswer(cmd, "Unable to call plugin");
|
||||||
|
}
|
||||||
|
if (result.contains("> DEAD <")) {
|
||||||
|
s_logger.debug("Heart beat is gone so dead.");
|
||||||
|
return new CheckOnHostAnswer(cmd, false, "Heart Beat is done");
|
||||||
|
} else if (result.contains("> ALIVE <")) {
|
||||||
|
s_logger.debug("Heart beat is still going");
|
||||||
|
return new CheckOnHostAnswer(cmd, true, "Heartbeat is still going");
|
||||||
|
}
|
||||||
|
return new CheckOnHostAnswer(cmd, null, "Unable to determine");
|
||||||
|
} catch (Exception e) {
|
||||||
|
s_logger.warn("Unable to fence", e);
|
||||||
|
return new CheckOnHostAnswer(cmd, e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public XenServer56Resource() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
|
||||||
|
super.configure(name, params);
|
||||||
|
|
||||||
|
_heartbeatInterval = NumbersUtil.parseInt((String) params.get("xen.heartbeat.interval"), 60);
|
||||||
|
// xapi connection timeout 600 seconds
|
||||||
|
_wait = 600;
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
docs/CloudStack2.0AdapterFrameworkGuide.docx
Executable file
BIN
docs/CloudStack2.0AdapterFrameworkGuide.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1.1ReleaseNotes.docx
Executable file
BIN
docs/CloudStack2.1.1ReleaseNotes.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1.2ReleaseNotes.docx
Executable file
BIN
docs/CloudStack2.1.2ReleaseNotes.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1.3FOSSReleaseNotes.docx
Executable file
BIN
docs/CloudStack2.1.3FOSSReleaseNotes.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1.3ReleaseNotes.docx
Executable file
BIN
docs/CloudStack2.1.3ReleaseNotes.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1AdminGuide.docx
Executable file
BIN
docs/CloudStack2.1AdminGuide.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1FOSSInstallationGuide.docx
Executable file
BIN
docs/CloudStack2.1FOSSInstallationGuide.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1InstallGuide.docx
Executable file
BIN
docs/CloudStack2.1InstallGuide.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1ReleaseNotes.docx
Executable file
BIN
docs/CloudStack2.1ReleaseNotes.docx
Executable file
Binary file not shown.
BIN
docs/CloudStack2.1UserInterfaceCustomization.docx
Executable file
BIN
docs/CloudStack2.1UserInterfaceCustomization.docx
Executable file
Binary file not shown.
13
server/db/create-database-premium.sql
Normal file
13
server/db/create-database-premium.sql
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='ANSI';
|
||||||
|
|
||||||
|
DROP DATABASE IF EXISTS `cloud_usage`;
|
||||||
|
|
||||||
|
CREATE DATABASE `cloud_usage`;
|
||||||
|
|
||||||
|
GRANT ALL ON cloud_usage.* to cloud@`localhost`;
|
||||||
|
GRANT ALL ON cloud_usage.* to cloud@`%`;
|
||||||
|
|
||||||
|
GRANT process ON *.* TO cloud@`localhost`;
|
||||||
|
GRANT process ON *.* TO cloud@`%`;
|
||||||
|
|
||||||
|
commit;
|
||||||
193
server/db/create-schema-premium.sql
Normal file
193
server/db/create-schema-premium.sql
Normal file
@ -0,0 +1,193 @@
|
|||||||
|
SET foreign_key_checks = 0;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`event`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`cloud_usage`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_vm_instance`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_ip_address`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_network`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_job`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`account`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`user_statistics`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_volume`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_storage`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_security_group`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_load_balancer_policy`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_port_forwarding`;
|
||||||
|
DROP TABLE IF EXISTS `cloud_usage`.`usage_event`;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`event` (
|
||||||
|
`id` bigint unsigned NOT NULL auto_increment,
|
||||||
|
`type` varchar(32) NOT NULL,
|
||||||
|
`description` varchar(1024) NOT NULL,
|
||||||
|
`user_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`created` datetime NOT NULL,
|
||||||
|
`level` varchar(16) NOT NULL,
|
||||||
|
`parameters` varchar(1024) NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`cloud_usage` (
|
||||||
|
`id` bigint unsigned NOT NULL auto_increment,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`domain_id` bigint unsigned NOT NULL,
|
||||||
|
`description` varchar(1024) NOT NULL,
|
||||||
|
`usage_display` varchar(255) NOT NULL,
|
||||||
|
`usage_type` int(1) unsigned,
|
||||||
|
`raw_usage` DOUBLE UNSIGNED NOT NULL,
|
||||||
|
`vm_instance_id` bigint unsigned,
|
||||||
|
`vm_name` varchar(255),
|
||||||
|
`offering_id` bigint unsigned,
|
||||||
|
`template_id` bigint unsigned,
|
||||||
|
`usage_id` bigint unsigned,
|
||||||
|
`size` bigint unsigned,
|
||||||
|
`start_date` DATETIME NOT NULL,
|
||||||
|
`end_date` DATETIME NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_vm_instance` (
|
||||||
|
`usage_type` int(1) unsigned,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`vm_instance_id` bigint unsigned NOT NULL,
|
||||||
|
`vm_name` varchar(255) NOT NULL,
|
||||||
|
`service_offering_id` bigint unsigned NOT NULL,
|
||||||
|
`template_id` bigint unsigned NOT NULL,
|
||||||
|
`start_date` DATETIME NOT NULL,
|
||||||
|
`end_date` DATETIME NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_network` (
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`host_id` bigint unsigned NOT NULL,
|
||||||
|
`bytes_sent` bigint unsigned NOT NULL default '0',
|
||||||
|
`bytes_received` bigint unsigned NOT NULL default '0',
|
||||||
|
`net_bytes_received` bigint unsigned NOT NULL default '0',
|
||||||
|
`net_bytes_sent` bigint unsigned NOT NULL default '0',
|
||||||
|
`current_bytes_received` bigint unsigned NOT NULL default '0',
|
||||||
|
`current_bytes_sent` bigint unsigned NOT NULL default '0',
|
||||||
|
`event_time_millis` bigint unsigned NOT NULL default '0',
|
||||||
|
PRIMARY KEY (`account_id`, `zone_id`, `host_id`, `event_time_millis`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_ip_address` (
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`domain_id` bigint unsigned NOT NULL,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`public_ip_address` varchar(15) NOT NULL,
|
||||||
|
`is_source_nat` smallint(1) NOT NULL,
|
||||||
|
`assigned` DATETIME NOT NULL,
|
||||||
|
`released` DATETIME NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_job` (
|
||||||
|
`id` bigint unsigned NOT NULL auto_increment,
|
||||||
|
`host` varchar(255),
|
||||||
|
`pid` int(5),
|
||||||
|
`job_type` int(1),
|
||||||
|
`scheduled` int(1),
|
||||||
|
`start_millis` bigint unsigned NOT NULL default '0' COMMENT 'start time in milliseconds of the aggregation range used by this job',
|
||||||
|
`end_millis` bigint unsigned NOT NULL default '0' COMMENT 'end time in milliseconds of the aggregation range used by this job',
|
||||||
|
`exec_time` bigint unsigned NOT NULL default '0' COMMENT 'how long in milliseconds it took for the job to execute',
|
||||||
|
`start_date` DATETIME COMMENT 'start date of the aggregation range used by this job',
|
||||||
|
`end_date` DATETIME COMMENT 'end date of the aggregation range used by this job',
|
||||||
|
`success` int(1),
|
||||||
|
`heartbeat` DATETIME NOT NULL,
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`account` (
|
||||||
|
`id` bigint unsigned NOT NULL,
|
||||||
|
`account_name` varchar(100) COMMENT 'an account name set by the creator of the account, defaults to username for single accounts',
|
||||||
|
`type` int(1) unsigned NOT NULL,
|
||||||
|
`domain_id` bigint unsigned,
|
||||||
|
`state` varchar(10) NOT NULL default 'enabled',
|
||||||
|
`removed` datetime COMMENT 'date removed',
|
||||||
|
`cleanup_needed` tinyint(1) NOT NULL default '0',
|
||||||
|
`network_domain` varchar(100) COMMENT 'Network domain name of the Vms of the account',
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`user_statistics` (
|
||||||
|
`id` bigint unsigned UNIQUE NOT NULL,
|
||||||
|
`data_center_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`public_ip_address` varchar(15),
|
||||||
|
`host_id` bigint unsigned,
|
||||||
|
`net_bytes_received` bigint unsigned NOT NULL default '0',
|
||||||
|
`net_bytes_sent` bigint unsigned NOT NULL default '0',
|
||||||
|
`current_bytes_received` bigint unsigned NOT NULL default '0',
|
||||||
|
`current_bytes_sent` bigint unsigned NOT NULL default '0',
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_volume` (
|
||||||
|
`id` bigint unsigned NOT NULL,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`domain_id` bigint unsigned NOT NULL,
|
||||||
|
`disk_offering_id` bigint unsigned,
|
||||||
|
`template_id` bigint unsigned,
|
||||||
|
`size` bigint unsigned,
|
||||||
|
`created` DATETIME NOT NULL,
|
||||||
|
`deleted` DATETIME NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_storage` (
|
||||||
|
`id` bigint unsigned NOT NULL,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`domain_id` bigint unsigned NOT NULL,
|
||||||
|
`storage_type` int(1) unsigned NOT NULL,
|
||||||
|
`size` bigint unsigned NOT NULL,
|
||||||
|
`created` DATETIME NOT NULL,
|
||||||
|
`deleted` DATETIME NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_security_group` (
|
||||||
|
`id` bigint unsigned NOT NULL,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`domain_id` bigint unsigned NOT NULL,
|
||||||
|
`vm_id` bigint unsigned NOT NULL,
|
||||||
|
`num_rules` bigint unsigned NOT NULL,
|
||||||
|
`created` DATETIME NOT NULL,
|
||||||
|
`deleted` DATETIME NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_load_balancer_policy` (
|
||||||
|
`id` bigint unsigned NOT NULL,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`domain_id` bigint unsigned NOT NULL,
|
||||||
|
`created` DATETIME NOT NULL,
|
||||||
|
`deleted` DATETIME NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_event` (
|
||||||
|
`id` bigint unsigned NOT NULL auto_increment,
|
||||||
|
`type` varchar(32) NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`created` datetime NOT NULL,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`resource_id` bigint unsigned,
|
||||||
|
`resource_name` varchar(255),
|
||||||
|
`offering_id` bigint unsigned,
|
||||||
|
`template_id` bigint unsigned,
|
||||||
|
`size` bigint unsigned,
|
||||||
|
`processed` tinyint NOT NULL default '0',
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
CREATE TABLE `cloud_usage`.`usage_port_forwarding` (
|
||||||
|
`id` bigint unsigned NOT NULL,
|
||||||
|
`zone_id` bigint unsigned NOT NULL,
|
||||||
|
`account_id` bigint unsigned NOT NULL,
|
||||||
|
`domain_id` bigint unsigned NOT NULL,
|
||||||
|
`created` DATETIME NOT NULL,
|
||||||
|
`deleted` DATETIME NULL
|
||||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
|
||||||
|
|
||||||
|
SET foreign_key_checks = 1;
|
||||||
155
server/src/com/cloud/agent/manager/ClusteredAgentAttache.java
Normal file
155
server/src/com/cloud/agent/manager/ClusteredAgentAttache.java
Normal file
@ -0,0 +1,155 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) 2008, 2009, VMOps Inc.
|
||||||
|
*
|
||||||
|
* This code is Copyrighted and must not be reused, modified, or redistributed without the explicit consent of VMOps.
|
||||||
|
*/
|
||||||
|
package com.cloud.agent.manager;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.nio.ByteBuffer;
|
||||||
|
import java.nio.channels.ClosedChannelException;
|
||||||
|
import java.nio.channels.SocketChannel;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.agent.Listener;
|
||||||
|
import com.cloud.agent.transport.Request;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.utils.nio.Link;
|
||||||
|
|
||||||
|
|
||||||
|
public class ClusteredAgentAttache extends ConnectedAgentAttache implements Routable {
|
||||||
|
private final static Logger s_logger = Logger.getLogger(ClusteredAgentAttache.class);
|
||||||
|
private static ClusteredAgentManagerImpl s_clusteredAgentMgr;
|
||||||
|
protected ByteBuffer _buffer = ByteBuffer.allocate(2048);
|
||||||
|
private boolean _forward = false;
|
||||||
|
|
||||||
|
static public void initialize(ClusteredAgentManagerImpl agentMgr) {
|
||||||
|
s_clusteredAgentMgr = agentMgr;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ClusteredAgentAttache(long id) {
|
||||||
|
super(id, null, false);
|
||||||
|
_forward = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public ClusteredAgentAttache(long id, Link link, boolean maintenance) {
|
||||||
|
super(id, link, maintenance);
|
||||||
|
_forward = link == null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isClosed() {
|
||||||
|
return _forward ? false : super.isClosed();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean forForward() {
|
||||||
|
return _forward;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void cancel(long seq) {
|
||||||
|
if (forForward()) {
|
||||||
|
Listener listener = getListener(seq);
|
||||||
|
if (listener != null && listener instanceof SynchronousListener) {
|
||||||
|
SynchronousListener synchronous = (SynchronousListener)listener;
|
||||||
|
String peerName = synchronous.getPeer();
|
||||||
|
if (peerName != null) {
|
||||||
|
s_logger.debug(log(seq, "Forwarding to peer to cancel due to timeout"));
|
||||||
|
s_clusteredAgentMgr.cancel(peerName, _id, seq, "Timed Out");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
super.cancel(seq);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void routeToAgent(byte[] data) throws AgentUnavailableException {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug(log(Request.getSequence(data), "Routing from " + Request.getManagementServerId(data)));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_link == null) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug(log(Request.getSequence(data), "Link is closed"));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
_link.send(data);
|
||||||
|
} catch (ClosedChannelException e) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug(log(Request.getSequence(data), "Channel is closed"));
|
||||||
|
}
|
||||||
|
|
||||||
|
throw new AgentUnavailableException("Channel to agent is closed", _id);
|
||||||
|
} catch (NullPointerException e) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug(log(Request.getSequence(data), "Link is closed"));
|
||||||
|
}
|
||||||
|
// Note: since this block is not in synchronized. It is possible for _link to become null.
|
||||||
|
throw new AgentUnavailableException("Channel to agent is closed", _id);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void send(Request req, Listener listener) throws AgentUnavailableException {
|
||||||
|
if (_link != null) {
|
||||||
|
super.send(req, listener);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
long seq = req.getSequence();
|
||||||
|
|
||||||
|
if (listener != null) {
|
||||||
|
registerListener(req.getSequence(), listener);
|
||||||
|
}
|
||||||
|
|
||||||
|
int i = 0;
|
||||||
|
SocketChannel ch = null;
|
||||||
|
boolean error = true;
|
||||||
|
try {
|
||||||
|
while (i++ < 5) {
|
||||||
|
String peerName = s_clusteredAgentMgr.findPeer(_id);
|
||||||
|
if (peerName == null) {
|
||||||
|
throw new AgentUnavailableException("Unable to find peer", _id);
|
||||||
|
}
|
||||||
|
|
||||||
|
ch = s_clusteredAgentMgr.connectToPeer(peerName, ch);
|
||||||
|
if (ch == null) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug(log(seq, "Unable to forward " + req.toString()));
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug(log(seq, "Forwarding " + req.toString() + " to " + peerName));
|
||||||
|
}
|
||||||
|
if (req.executeInSequence() && listener != null && listener instanceof SynchronousListener) {
|
||||||
|
SynchronousListener synchronous = (SynchronousListener)listener;
|
||||||
|
synchronous.setPeer(peerName);
|
||||||
|
}
|
||||||
|
Link.write(ch, req.toBytes());
|
||||||
|
error = false;
|
||||||
|
return;
|
||||||
|
} catch (IOException e) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug(log(seq, "Error on connecting to management node: " + req.toString() + " try = " + i));
|
||||||
|
}
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("IOException " + e.getMessage() + " when sending data to peer " + peerName + ", close peer connection and let it re-open");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
if (error) {
|
||||||
|
unregisterListener(seq);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
throw new AgentUnavailableException("Unable to reach the peer that the agent is connected", _id);
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,613 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) 2008, 2009, VMOps Inc.
|
||||||
|
*
|
||||||
|
* This code is Copyrighted and must not be reused, modified, or redistributed without the explicit consent of VMOps.
|
||||||
|
*/
|
||||||
|
package com.cloud.agent.manager;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.net.InetAddress;
|
||||||
|
import java.net.InetSocketAddress;
|
||||||
|
import java.net.UnknownHostException;
|
||||||
|
import java.nio.ByteBuffer;
|
||||||
|
import java.nio.channels.SocketChannel;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.Timer;
|
||||||
|
import java.util.TimerTask;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.agent.AgentManager;
|
||||||
|
import com.cloud.agent.api.CancelCommand;
|
||||||
|
import com.cloud.agent.api.ChangeAgentCommand;
|
||||||
|
import com.cloud.agent.api.Command;
|
||||||
|
import com.cloud.agent.transport.Request;
|
||||||
|
import com.cloud.agent.transport.Request.Version;
|
||||||
|
import com.cloud.agent.transport.Response;
|
||||||
|
import com.cloud.cluster.ClusterManager;
|
||||||
|
import com.cloud.cluster.ClusterManagerListener;
|
||||||
|
import com.cloud.cluster.ManagementServerHostVO;
|
||||||
|
import com.cloud.cluster.dao.ManagementServerHostDao;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.host.HostVO;
|
||||||
|
import com.cloud.host.Status;
|
||||||
|
import com.cloud.host.Host.Type;
|
||||||
|
import com.cloud.host.Status.Event;
|
||||||
|
import com.cloud.resource.ResourceService;
|
||||||
|
import com.cloud.resource.ServerResource;
|
||||||
|
import com.cloud.storage.resource.DummySecondaryStorageResource;
|
||||||
|
import com.cloud.utils.ActionDelegate;
|
||||||
|
import com.cloud.utils.component.Inject;
|
||||||
|
import com.cloud.utils.db.DB;
|
||||||
|
import com.cloud.utils.db.GlobalLock;
|
||||||
|
import com.cloud.utils.db.Transaction;
|
||||||
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
|
import com.cloud.utils.nio.Link;
|
||||||
|
import com.cloud.utils.nio.Task;
|
||||||
|
import com.cloud.dc.ClusterVO;
|
||||||
|
import com.cloud.dc.DataCenterVO;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
|
||||||
|
|
||||||
|
@Local(value={AgentManager.class, ResourceService.class})
|
||||||
|
public class ClusteredAgentManagerImpl extends AgentManagerImpl implements ClusterManagerListener {
|
||||||
|
final static Logger s_logger = Logger.getLogger(ClusteredAgentManagerImpl.class);
|
||||||
|
|
||||||
|
public final static long STARTUP_DELAY = 5000;
|
||||||
|
public final static long SCAN_INTERVAL = 90000; // 90 seconds, it takes 60 sec for xenserver to fail login
|
||||||
|
public final static int ACQUIRE_GLOBAL_LOCK_TIMEOUT_FOR_COOPERATION = 5; // 5 seconds
|
||||||
|
public final static long LOAD_SIZE = 100;
|
||||||
|
|
||||||
|
@Inject protected ClusterManager _clusterMgr = null;
|
||||||
|
protected Set<Long> _pendingDirectAttache = new HashSet<Long>();
|
||||||
|
|
||||||
|
protected HashMap<String, SocketChannel> _peers;
|
||||||
|
private final Timer _timer = new Timer("ClusteredAgentManager Timer");
|
||||||
|
|
||||||
|
@Inject protected ManagementServerHostDao _mshostDao;
|
||||||
|
|
||||||
|
protected ClusteredAgentManagerImpl() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
|
||||||
|
_peers = new HashMap<String, SocketChannel>(7);
|
||||||
|
_nodeId = _clusterMgr.getId();
|
||||||
|
|
||||||
|
ClusteredAgentAttache.initialize(this);
|
||||||
|
|
||||||
|
_clusterMgr.registerListener(this);
|
||||||
|
|
||||||
|
return super.configure(name, params);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean start() {
|
||||||
|
if (!super.start()) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
_timer.schedule(new DirectAgentScanTimerTask(), STARTUP_DELAY, SCAN_INTERVAL);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void runDirectAgentScanTimerTask() {
|
||||||
|
GlobalLock scanLock = GlobalLock.getInternLock(this.getClass().getName());
|
||||||
|
try {
|
||||||
|
if(scanLock.lock(ACQUIRE_GLOBAL_LOCK_TIMEOUT_FOR_COOPERATION)) {
|
||||||
|
try {
|
||||||
|
scanDirectAgentToLoad();
|
||||||
|
} finally {
|
||||||
|
scanLock.unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
scanLock.releaseRef();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void scanDirectAgentToLoad() {
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("Begin scanning directly connected hosts");
|
||||||
|
|
||||||
|
// for agents that are self-managed, threshold to be considered as disconnected is 3 ping intervals
|
||||||
|
long cutSeconds = (System.currentTimeMillis() >> 10) - (_pingInterval*3);
|
||||||
|
List<HostVO> hosts = _hostDao.findDirectAgentToLoad(_clusterMgr.getId(), cutSeconds, LOAD_SIZE);
|
||||||
|
if ( hosts != null && hosts.size() == LOAD_SIZE ) {
|
||||||
|
Long clusterId = hosts.get((int)(LOAD_SIZE-1)).getClusterId();
|
||||||
|
if ( clusterId != null) {
|
||||||
|
for ( int i = (int)(LOAD_SIZE-1); i > 0; i-- ) {
|
||||||
|
if ( hosts.get(i).getClusterId() == clusterId ) {
|
||||||
|
hosts.remove(i);
|
||||||
|
} else {
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(hosts != null && hosts.size() > 0) {
|
||||||
|
for(HostVO host: hosts) {
|
||||||
|
AgentAttache agentattache = findAttache(host.getId());
|
||||||
|
if(agentattache != null) {
|
||||||
|
// already loaded, skip
|
||||||
|
if(agentattache.forForward()) {
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Host " + host.getName() + " is detected down, but we have a forward attache running, disconnect this one before launching the host");
|
||||||
|
removeAgent(agentattache, Status.Disconnected);
|
||||||
|
} else {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
synchronized(_pendingDirectAttache) {
|
||||||
|
if(_pendingDirectAttache.contains(host.getId())) {
|
||||||
|
// is being loaded, skip
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Loading directly connected host " + host.getId() + "(" + host.getName() + ")");
|
||||||
|
|
||||||
|
synchronized(_pendingDirectAttache) {
|
||||||
|
_pendingDirectAttache.add(host.getId());
|
||||||
|
}
|
||||||
|
host.setLastPinged(System.currentTimeMillis() >> 10);
|
||||||
|
_hostDao.update(host.getId(), host);
|
||||||
|
loadDirectlyConnectedHost(host, new ActionDelegate<Long>() {
|
||||||
|
@Override
|
||||||
|
public void action(Long param) {
|
||||||
|
synchronized(_pendingDirectAttache) {
|
||||||
|
_pendingDirectAttache.remove(param);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("End scanning directly connected hosts");
|
||||||
|
}
|
||||||
|
|
||||||
|
private class DirectAgentScanTimerTask extends TimerTask {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
try {
|
||||||
|
runDirectAgentScanTimerTask();
|
||||||
|
} catch(Throwable e) {
|
||||||
|
s_logger.error("Unexpected exception " + e.getMessage(), e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Task create(Task.Type type, Link link, byte[] data) {
|
||||||
|
return new ClusteredAgentHandler(type, link, data);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean cancelMaintenance(final long hostId) {
|
||||||
|
try {
|
||||||
|
Boolean result = _clusterMgr.propagateAgentEvent(hostId, Event.ResetRequested);
|
||||||
|
|
||||||
|
if (result != null) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return super.cancelMaintenance(hostId);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected AgentAttache createAttache(long id) {
|
||||||
|
s_logger.debug("create forwarding ClusteredAgentAttache for " + id);
|
||||||
|
final AgentAttache attache = new ClusteredAgentAttache(id);
|
||||||
|
AgentAttache old = null;
|
||||||
|
synchronized(_agents) {
|
||||||
|
old = _agents.get(id);
|
||||||
|
_agents.put(id, attache);
|
||||||
|
}
|
||||||
|
if( old != null ) {
|
||||||
|
old.disconnect(Status.Removed);
|
||||||
|
}
|
||||||
|
return attache;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected AgentAttache createAttache(long id, HostVO server, Link link) {
|
||||||
|
s_logger.debug("create ClusteredAgentAttache for " + id);
|
||||||
|
final AgentAttache attache = new ClusteredAgentAttache(id, link, server.getStatus() == Status.Maintenance || server.getStatus() == Status.ErrorInMaintenance || server.getStatus() == Status.PrepareForMaintenance);
|
||||||
|
link.attach(attache);
|
||||||
|
AgentAttache old = null;
|
||||||
|
synchronized(_agents) {
|
||||||
|
old = _agents.get(id);
|
||||||
|
_agents.put(id, attache);
|
||||||
|
}
|
||||||
|
if( old != null ) {
|
||||||
|
old.disconnect(Status.Removed);
|
||||||
|
}
|
||||||
|
return attache;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected AgentAttache createAttache(long id, HostVO server, ServerResource resource) {
|
||||||
|
if (resource instanceof DummySecondaryStorageResource) {
|
||||||
|
return new DummyAttache(id, false);
|
||||||
|
}
|
||||||
|
s_logger.debug("create ClusteredDirectAgentAttache for " + id);
|
||||||
|
final DirectAgentAttache attache = new ClusteredDirectAgentAttache(id, _nodeId, resource, server.getStatus() == Status.Maintenance
|
||||||
|
|| server.getStatus() == Status.ErrorInMaintenance || server.getStatus() == Status.PrepareForMaintenance, this);
|
||||||
|
AgentAttache old = null;
|
||||||
|
synchronized (_agents) {
|
||||||
|
old = _agents.get(id);
|
||||||
|
_agents.put(id, attache);
|
||||||
|
}
|
||||||
|
if( old != null ) {
|
||||||
|
old.disconnect(Status.Removed);
|
||||||
|
}
|
||||||
|
return attache;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean handleDisconnect(AgentAttache attache, Status.Event event, boolean investigate) {
|
||||||
|
return handleDisconnect(attache, event, investigate, true);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected boolean handleDisconnect(AgentAttache agent, Status.Event event, boolean investigate, boolean broadcast) {
|
||||||
|
if( agent == null )
|
||||||
|
return true;
|
||||||
|
|
||||||
|
if (super.handleDisconnect(agent, event, investigate)) {
|
||||||
|
if (broadcast) {
|
||||||
|
notifyNodesInCluster(agent);
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean executeUserRequest(long hostId, Event event) throws AgentUnavailableException {
|
||||||
|
if (event == Event.AgentDisconnected) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Received agent disconnect event for host " + hostId);
|
||||||
|
}
|
||||||
|
AgentAttache attache = findAttache(hostId);
|
||||||
|
if (attache != null) {
|
||||||
|
handleDisconnect(attache, Event.AgentDisconnected, false, false);
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return super.executeUserRequest(hostId, event);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean maintain(final long hostId) throws AgentUnavailableException {
|
||||||
|
Boolean result = _clusterMgr.propagateAgentEvent(hostId, Event.MaintenanceRequested);
|
||||||
|
if (result != null) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
return super.maintain(hostId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean reconnect(final long hostId) throws AgentUnavailableException {
|
||||||
|
Boolean result = _clusterMgr.propagateAgentEvent(hostId, Event.ShutdownRequested);
|
||||||
|
if (result != null) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
return super.reconnect(hostId);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override @DB
|
||||||
|
public boolean deleteHost(long hostId) {
|
||||||
|
try {
|
||||||
|
Boolean result = _clusterMgr.propagateAgentEvent(hostId, Event.Remove);
|
||||||
|
if (result != null) {
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return super.deleteHost(hostId);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void notifyNodesInCluster(AgentAttache attache) {
|
||||||
|
s_logger.debug("Notifying other nodes of to disconnect");
|
||||||
|
Command[] cmds = new Command[] { new ChangeAgentCommand(attache.getId(), Event.AgentDisconnected) };
|
||||||
|
_clusterMgr.broadcast(attache.getId(), cmds);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected static void logT(byte[] bytes, final String msg) {
|
||||||
|
s_logger.trace("Seq " + Request.getAgentId(bytes) + "-" + Request.getSequence(bytes) + ": MgmtId " + Request.getManagementServerId(bytes) + ": " + (Request.isRequest(bytes) ? "Req: " : "Resp: ") + msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected static void logD(byte[] bytes, final String msg) {
|
||||||
|
s_logger.debug("Seq " + Request.getAgentId(bytes) + "-" + Request.getSequence(bytes) + ": MgmtId " + Request.getManagementServerId(bytes) + ": " + (Request.isRequest(bytes) ? "Req: " : "Resp: ") + msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected static void logI(byte[] bytes, final String msg) {
|
||||||
|
s_logger.info("Seq " + Request.getAgentId(bytes) + "-" + Request.getSequence(bytes) + ": MgmtId " + Request.getManagementServerId(bytes) + ": " + (Request.isRequest(bytes) ? "Req: " : "Resp: ") + msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean routeToPeer(String peer, byte[] bytes) {
|
||||||
|
int i = 0;
|
||||||
|
SocketChannel ch = null;
|
||||||
|
while (i++ < 5) {
|
||||||
|
ch = connectToPeer(peer, ch);
|
||||||
|
if (ch == null) {
|
||||||
|
try {
|
||||||
|
logD(bytes, "Unable to route to peer: " + Request.parse(bytes).toString());
|
||||||
|
} catch (Exception e) {
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
logD(bytes, "Routing to peer");
|
||||||
|
}
|
||||||
|
Link.write(ch, new ByteBuffer[] { ByteBuffer.wrap(bytes) });
|
||||||
|
return true;
|
||||||
|
} catch (IOException e) {
|
||||||
|
try {
|
||||||
|
logI(bytes, "Unable to route to peer: " + Request.parse(bytes).toString() + " due to " + e.getMessage());
|
||||||
|
} catch (Exception ex) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String findPeer(long hostId) {
|
||||||
|
return _clusterMgr.getPeerName(hostId);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void cancel(String peerName, long hostId, long sequence, String reason) {
|
||||||
|
CancelCommand cancel = new CancelCommand(sequence, reason);
|
||||||
|
Request req = new Request(-1, hostId, _nodeId, cancel, true);
|
||||||
|
req.setControl(true);
|
||||||
|
routeToPeer(peerName, req.getBytes());
|
||||||
|
}
|
||||||
|
|
||||||
|
public void closePeer(String peerName) {
|
||||||
|
synchronized(_peers) {
|
||||||
|
SocketChannel ch = _peers.get(peerName);
|
||||||
|
if(ch != null) {
|
||||||
|
try {
|
||||||
|
ch.close();
|
||||||
|
} catch(IOException e) {
|
||||||
|
s_logger.warn("Unable to close peer socket connection to " + peerName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_peers.remove(peerName);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public SocketChannel connectToPeer(String peerName, SocketChannel prevCh) {
|
||||||
|
synchronized(_peers) {
|
||||||
|
SocketChannel ch = _peers.get(peerName);
|
||||||
|
if (prevCh != null) {
|
||||||
|
try {
|
||||||
|
prevCh.close();
|
||||||
|
} catch (Exception e) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (ch == null || ch == prevCh) {
|
||||||
|
ManagementServerHostVO ms = _clusterMgr.getPeer(peerName);
|
||||||
|
if (ms == null) {
|
||||||
|
s_logger.info("Unable to find peer: " + peerName);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
String ip = ms.getServiceIP();
|
||||||
|
InetAddress addr;
|
||||||
|
try {
|
||||||
|
addr = InetAddress.getByName(ip);
|
||||||
|
} catch (UnknownHostException e) {
|
||||||
|
throw new CloudRuntimeException("Unable to resolve " + ip);
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
ch = SocketChannel.open(new InetSocketAddress(addr, _port));
|
||||||
|
ch.configureBlocking(true); // make sure we are working at blocking mode
|
||||||
|
ch.socket().setKeepAlive(true);
|
||||||
|
ch.socket().setSoTimeout(60 * 1000);
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Connection to peer opened: " + peerName + ", ip: " + ip);
|
||||||
|
}
|
||||||
|
_peers.put(peerName, ch);
|
||||||
|
} catch (IOException e) {
|
||||||
|
s_logger.warn("Unable to connect to peer management server: " + peerName + ", ip: " + ip + " due to " + e.getMessage(), e);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (s_logger.isTraceEnabled()) {
|
||||||
|
s_logger.trace("Found open channel for peer: " + peerName);
|
||||||
|
}
|
||||||
|
return ch;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public SocketChannel connectToPeer(long hostId, SocketChannel prevCh) {
|
||||||
|
String peerName = _clusterMgr.getPeerName(hostId);
|
||||||
|
if (peerName == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return connectToPeer(peerName, prevCh);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected AgentAttache getAttache(final Long hostId) throws AgentUnavailableException {
|
||||||
|
assert (hostId != null) : "Who didn't check their id value?";
|
||||||
|
HostVO host = _hostDao.findById(hostId);
|
||||||
|
if( host == null) {
|
||||||
|
throw new AgentUnavailableException("Can't find the host ", hostId);
|
||||||
|
}
|
||||||
|
|
||||||
|
AgentAttache agent = findAttache(hostId);
|
||||||
|
if (agent == null) {
|
||||||
|
if (host.getStatus() == Status.Up && (host.getManagementServerId() != null && host.getManagementServerId() != _nodeId)) {
|
||||||
|
agent = createAttache(hostId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (agent == null) {
|
||||||
|
throw new AgentUnavailableException("Host is not in the right state", hostId);
|
||||||
|
}
|
||||||
|
|
||||||
|
return agent;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
if(_peers != null) {
|
||||||
|
for (SocketChannel ch : _peers.values()) {
|
||||||
|
try {
|
||||||
|
s_logger.info("Closing: " + ch.toString());
|
||||||
|
ch.close();
|
||||||
|
} catch (IOException e) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_timer.cancel();
|
||||||
|
return super.stop();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void startDirectlyConnectedHosts() {
|
||||||
|
// override and let it be dummy for purpose, we will scan and load direct agents periodically.
|
||||||
|
// We may also pickup agents that have been left over from other crashed management server
|
||||||
|
}
|
||||||
|
|
||||||
|
public class ClusteredAgentHandler extends AgentHandler {
|
||||||
|
|
||||||
|
public ClusteredAgentHandler(Task.Type type, Link link, byte[] data) {
|
||||||
|
super(type, link, data);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void doTask(final Task task) throws Exception {
|
||||||
|
Transaction txn = Transaction.open(Transaction.CLOUD_DB);
|
||||||
|
try {
|
||||||
|
if (task.getType() != Task.Type.DATA) {
|
||||||
|
super.doTask(task);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
final byte[] data = task.getData();
|
||||||
|
Version ver = Request.getVersion(data);
|
||||||
|
if (ver.ordinal() < Version.v3.ordinal()) {
|
||||||
|
super.doTask(task);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
long hostId = Request.getAgentId(data);
|
||||||
|
Link link = task.getLink();
|
||||||
|
|
||||||
|
if (Request.fromServer(data)) {
|
||||||
|
|
||||||
|
AgentAttache agent = findAgent(hostId);
|
||||||
|
|
||||||
|
if (Request.isControl(data)) {
|
||||||
|
if (agent == null) {
|
||||||
|
logD(data, "No attache to process cancellation");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
Request req = Request.parse(data);
|
||||||
|
Command[] cmds = req.getCommands();
|
||||||
|
CancelCommand cancel = (CancelCommand)cmds[0];
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
logD(data, "Cancel request received");
|
||||||
|
}
|
||||||
|
agent.cancel(cancel.getSequence());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
if (agent == null || agent.isClosed()) {
|
||||||
|
throw new AgentUnavailableException("Unable to route to agent ", hostId);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Request.isRequest(data) && Request.requiresSequentialExecution(data)) {
|
||||||
|
// route it to the agent.
|
||||||
|
// But we have the serialize the control commands here so we have
|
||||||
|
// to deserialize this and send it through the agent attache.
|
||||||
|
Request req = Request.parse(data);
|
||||||
|
agent.send(req, null);
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
if (agent instanceof Routable) {
|
||||||
|
Routable cluster = (Routable)agent;
|
||||||
|
cluster.routeToAgent(data);
|
||||||
|
} else {
|
||||||
|
agent.send(Request.parse(data));
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
logD(data, e.getMessage());
|
||||||
|
cancel(Long.toString(Request.getManagementServerId(data)), hostId, Request.getSequence(data), e.getMessage());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
long mgmtId = Request.getManagementServerId(data);
|
||||||
|
if (mgmtId != -1 && mgmtId != _nodeId) {
|
||||||
|
routeToPeer(Long.toString(mgmtId), data);
|
||||||
|
if (Request.requiresSequentialExecution(data)) {
|
||||||
|
AgentAttache attache = (AgentAttache)link.attachment();
|
||||||
|
if (attache != null) {
|
||||||
|
attache.sendNext(Request.getSequence(data));
|
||||||
|
} else if (s_logger.isDebugEnabled()){
|
||||||
|
logD(data, "No attache to process " + Request.parse(data).toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
if (Request.isRequest(data)) {
|
||||||
|
super.doTask(task);
|
||||||
|
} else {
|
||||||
|
// received an answer.
|
||||||
|
final Response response = Response.parse(data);
|
||||||
|
AgentAttache attache = findAttache(response.getAgentId());
|
||||||
|
if (attache == null) {
|
||||||
|
s_logger.info("SeqA " + response.getAgentId() + "-" + response.getSequence() + "Unable to find attache to forward " + response.toString());
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (!attache.processAnswers(response.getSequence(), response)) {
|
||||||
|
s_logger.info("SeqA " + attache.getId() + "-" + response.getSequence() + ": Response is not processed: " + response.toString());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
txn.close();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onManagementNodeJoined(List<ManagementServerHostVO> nodeList, long selfNodeId) {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onManagementNodeLeft(List<ManagementServerHostVO> nodeList, long selfNodeId) {
|
||||||
|
for (ManagementServerHostVO vo : nodeList) {
|
||||||
|
s_logger.info("Marking hosts as disconnected on Management server" + vo.getMsid());
|
||||||
|
_hostDao.markHostsAsDisconnected(vo.getMsid(), Status.Up, Status.Connecting, Status.Updating, Status.Disconnected, Status.Down);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,69 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (C) 2010 Cloud.com, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under the GNU General Public License v3 or later.
|
||||||
|
*
|
||||||
|
* It is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or any later version.
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package com.cloud.agent.manager;
|
||||||
|
|
||||||
|
import com.cloud.agent.manager.DirectAgentAttache;
|
||||||
|
import com.cloud.agent.transport.Request;
|
||||||
|
import com.cloud.agent.transport.Response;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.exception.UnsupportedVersionException;
|
||||||
|
import com.cloud.resource.ServerResource;
|
||||||
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
|
|
||||||
|
public class ClusteredDirectAgentAttache extends DirectAgentAttache implements Routable {
|
||||||
|
private final ClusteredAgentManagerImpl _mgr;
|
||||||
|
private final long _nodeId;
|
||||||
|
|
||||||
|
public ClusteredDirectAgentAttache(long id, long mgmtId, ServerResource resource, boolean maintenance, ClusteredAgentManagerImpl mgr) {
|
||||||
|
super(id, resource, maintenance, mgr);
|
||||||
|
_mgr = mgr;
|
||||||
|
_nodeId = mgmtId;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void routeToAgent(byte[] data) throws AgentUnavailableException {
|
||||||
|
Request req;
|
||||||
|
try {
|
||||||
|
req = Request.parse(data);
|
||||||
|
} catch (ClassNotFoundException e) {
|
||||||
|
throw new CloudRuntimeException("Unable to rout to an agent ", e);
|
||||||
|
} catch (UnsupportedVersionException e) {
|
||||||
|
throw new CloudRuntimeException("Unable to rout to an agent ", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (req instanceof Response) {
|
||||||
|
super.process(((Response)req).getAnswers());
|
||||||
|
} else {
|
||||||
|
super.send(req);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean processAnswers(long seq, Response response) {
|
||||||
|
long mgmtId = response.getManagementServerId();
|
||||||
|
if (mgmtId != -1 && mgmtId != _nodeId) {
|
||||||
|
_mgr.routeToPeer(Long.toString(mgmtId), response.getBytes());
|
||||||
|
if (response.executeInSequence()) {
|
||||||
|
sendNext(response.getSequence());
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return super.processAnswers(seq, response);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
30
server/src/com/cloud/agent/manager/Routable.java
Normal file
30
server/src/com/cloud/agent/manager/Routable.java
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (C) 2010 Cloud.com, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under the GNU General Public License v3 or later.
|
||||||
|
*
|
||||||
|
* It is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or any later version.
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package com.cloud.agent.manager;
|
||||||
|
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
|
||||||
|
public interface Routable {
|
||||||
|
/**
|
||||||
|
* Directly rout this data to the agent.
|
||||||
|
*
|
||||||
|
* @param data
|
||||||
|
* @throws AgentUnavailableException
|
||||||
|
*/
|
||||||
|
void routeToAgent(byte[] data) throws AgentUnavailableException;
|
||||||
|
}
|
||||||
139
server/src/com/cloud/alert/ClusterAlertAdapter.java
Normal file
139
server/src/com/cloud/alert/ClusterAlertAdapter.java
Normal file
@ -0,0 +1,139 @@
|
|||||||
|
package com.cloud.alert;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.alert.AlertAdapter;
|
||||||
|
import com.cloud.alert.AlertManager;
|
||||||
|
import com.cloud.cluster.ClusterManager;
|
||||||
|
import com.cloud.cluster.ClusterNodeJoinEventArgs;
|
||||||
|
import com.cloud.cluster.ClusterNodeLeftEventArgs;
|
||||||
|
import com.cloud.cluster.ManagementServerHostVO;
|
||||||
|
import com.cloud.cluster.dao.ManagementServerHostDao;
|
||||||
|
import com.cloud.utils.component.ComponentLocator;
|
||||||
|
import com.cloud.utils.db.GlobalLock;
|
||||||
|
import com.cloud.utils.events.EventArgs;
|
||||||
|
import com.cloud.utils.events.SubscriptionMgr;
|
||||||
|
|
||||||
|
@Local(value=AlertAdapter.class)
|
||||||
|
public class ClusterAlertAdapter implements AlertAdapter {
|
||||||
|
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ClusterAlertAdapter.class);
|
||||||
|
|
||||||
|
private AlertManager _alertMgr;
|
||||||
|
private String _name;
|
||||||
|
|
||||||
|
private ManagementServerHostDao _mshostDao;
|
||||||
|
|
||||||
|
public void onClusterAlert(Object sender, EventArgs args) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Receive cluster alert, EventArgs: " + args.getClass().getName());
|
||||||
|
|
||||||
|
if(args instanceof ClusterNodeJoinEventArgs) {
|
||||||
|
onClusterNodeJoined(sender, (ClusterNodeJoinEventArgs)args);
|
||||||
|
} else if(args instanceof ClusterNodeLeftEventArgs) {
|
||||||
|
onClusterNodeLeft(sender, (ClusterNodeLeftEventArgs)args);
|
||||||
|
} else {
|
||||||
|
s_logger.error("Unrecognized cluster alert event");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void onClusterNodeJoined(Object sender, ClusterNodeJoinEventArgs args) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Handle cluster node join alert, self node: " + args.getSelf());
|
||||||
|
|
||||||
|
for(ManagementServerHostVO mshost : args.getJoinedNodes()) {
|
||||||
|
if(mshost.getId().longValue() == args.getSelf().longValue()) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Management server node " + mshost.getServiceIP() + " is up, send alert");
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_MANAGMENT_NODE, 0, new Long(0),
|
||||||
|
"Management server node " + mshost.getServiceIP() + " is up", "");
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void onClusterNodeLeft(Object sender, ClusterNodeLeftEventArgs args) {
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Handle cluster node left alert, self node: " + args.getSelf());
|
||||||
|
|
||||||
|
for(ManagementServerHostVO mshost : args.getLeftNodes()) {
|
||||||
|
if(mshost.getId().longValue() != args.getSelf().longValue()) {
|
||||||
|
GlobalLock lock = GlobalLock.getInternLock("ManagementAlert." + mshost.getId());
|
||||||
|
try {
|
||||||
|
if(lock.lock(180)) {
|
||||||
|
try {
|
||||||
|
ManagementServerHostVO alertHost = _mshostDao.findById(mshost.getId());
|
||||||
|
if(alertHost.getAlertCount() == 0) {
|
||||||
|
_mshostDao.increaseAlertCount(mshost.getId());
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Detected management server node " + mshost.getServiceIP() + " is down, send alert");
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_MANAGMENT_NODE, 0, new Long(0),
|
||||||
|
"Management server node " + mshost.getServiceIP() + " is down", "");
|
||||||
|
} else {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Detected management server node " + mshost.getServiceIP() + " is down, but alert has already been set");
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
lock.unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} finally {
|
||||||
|
lock.releaseRef();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params)
|
||||||
|
throws ConfigurationException {
|
||||||
|
|
||||||
|
if (s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Start configuring cluster alert manager : " + name);
|
||||||
|
|
||||||
|
ComponentLocator locator = ComponentLocator.getCurrentLocator();
|
||||||
|
|
||||||
|
_mshostDao = locator.getDao(ManagementServerHostDao.class);
|
||||||
|
if(_mshostDao == null)
|
||||||
|
throw new ConfigurationException("Unable to get " + ManagementServerHostDao.class.getName());
|
||||||
|
|
||||||
|
_alertMgr = locator.getManager(AlertManager.class);
|
||||||
|
if (_alertMgr == null) {
|
||||||
|
throw new ConfigurationException("Unable to get " + AlertManager.class.getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
SubscriptionMgr.getInstance().subscribe(ClusterManager.ALERT_SUBJECT, this, "onClusterAlert");
|
||||||
|
} catch (SecurityException e) {
|
||||||
|
throw new ConfigurationException("Unable to register cluster event subscription");
|
||||||
|
} catch (NoSuchMethodException e) {
|
||||||
|
throw new ConfigurationException("Unable to register cluster event subscription");
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return _name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean start() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
214
server/src/com/cloud/alert/ConsoleProxyAlertAdapter.java
Normal file
214
server/src/com/cloud/alert/ConsoleProxyAlertAdapter.java
Normal file
@ -0,0 +1,214 @@
|
|||||||
|
package com.cloud.alert;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.alert.AlertAdapter;
|
||||||
|
import com.cloud.alert.AlertManager;
|
||||||
|
import com.cloud.consoleproxy.ConsoleProxyAlertEventArgs;
|
||||||
|
import com.cloud.consoleproxy.ConsoleProxyManager;
|
||||||
|
import com.cloud.dc.DataCenterVO;
|
||||||
|
import com.cloud.dc.dao.DataCenterDao;
|
||||||
|
import com.cloud.utils.component.ComponentLocator;
|
||||||
|
import com.cloud.utils.events.SubscriptionMgr;
|
||||||
|
import com.cloud.vm.ConsoleProxyVO;
|
||||||
|
import com.cloud.vm.dao.ConsoleProxyDao;
|
||||||
|
|
||||||
|
@Local(value=AlertAdapter.class)
|
||||||
|
public class ConsoleProxyAlertAdapter implements AlertAdapter {
|
||||||
|
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ConsoleProxyAlertAdapter.class);
|
||||||
|
|
||||||
|
private AlertManager _alertMgr;
|
||||||
|
private String _name;
|
||||||
|
|
||||||
|
private DataCenterDao _dcDao;
|
||||||
|
private ConsoleProxyDao _consoleProxyDao;
|
||||||
|
|
||||||
|
public void onProxyAlert(Object sender, ConsoleProxyAlertEventArgs args) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("received console proxy alert");
|
||||||
|
|
||||||
|
DataCenterVO dc = _dcDao.findById(args.getZoneId());
|
||||||
|
ConsoleProxyVO proxy = args.getProxy();
|
||||||
|
if(proxy == null)
|
||||||
|
proxy = _consoleProxyDao.findById(args.getProxyId());
|
||||||
|
|
||||||
|
switch(args.getType()) {
|
||||||
|
case ConsoleProxyAlertEventArgs.PROXY_CREATED :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("New console proxy created, zone: " + dc.getName() + ", proxy: " +
|
||||||
|
proxy.getName() + ", public IP: " + proxy.getPublicIpAddress() + ", private IP: " +
|
||||||
|
proxy.getPrivateIpAddress());
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ConsoleProxyAlertEventArgs.PROXY_UP :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Console proxy is up, zone: " + dc.getName() + ", proxy: " +
|
||||||
|
proxy.getName() + ", public IP: " + proxy.getPublicIpAddress() + ", private IP: " +
|
||||||
|
proxy.getPrivateIpAddress());
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_CONSOLE_PROXY,
|
||||||
|
args.getZoneId(),
|
||||||
|
proxy.getPodId(),
|
||||||
|
"Console proxy up in zone: " + dc.getName() + ", proxy: " + proxy.getName() + ", public IP: " + proxy.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()),
|
||||||
|
"Console proxy up (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ConsoleProxyAlertEventArgs.PROXY_DOWN :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Console proxy is down, zone: " + dc.getName() + ", proxy: " +
|
||||||
|
proxy.getName() + ", public IP: " + proxy.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_CONSOLE_PROXY,
|
||||||
|
args.getZoneId(),
|
||||||
|
proxy.getPodId(),
|
||||||
|
"Console proxy down in zone: " + dc.getName() + ", proxy: " + proxy.getName() + ", public IP: " + proxy.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()),
|
||||||
|
"Console proxy down (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ConsoleProxyAlertEventArgs.PROXY_REBOOTED :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Console proxy is rebooted, zone: " + dc.getName() + ", proxy: " +
|
||||||
|
proxy.getName() + ", public IP: " + proxy.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_CONSOLE_PROXY,
|
||||||
|
args.getZoneId(),
|
||||||
|
proxy.getPodId(),
|
||||||
|
"Console proxy rebooted in zone: " + dc.getName() + ", proxy: " + proxy.getName() + ", public IP: " + proxy.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()),
|
||||||
|
"Console proxy rebooted (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ConsoleProxyAlertEventArgs.PROXY_CREATE_FAILURE :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Console proxy creation failure, zone: " + dc.getName() + ", proxy: " +
|
||||||
|
proxy.getName() + ", public IP: " + proxy.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_CONSOLE_PROXY,
|
||||||
|
args.getZoneId(),
|
||||||
|
proxy.getPodId(),
|
||||||
|
"Console proxy creation failure. zone: " + dc.getName() + ", proxy: " + proxy.getName() + ", public IP: " + proxy.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress())
|
||||||
|
+ ", error details: " + args.getMessage(),
|
||||||
|
"Console proxy creation failure (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ConsoleProxyAlertEventArgs.PROXY_START_FAILURE :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Console proxy startup failure, zone: " + dc.getName() + ", proxy: " +
|
||||||
|
proxy.getName() + ", public IP: " + proxy.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_CONSOLE_PROXY,
|
||||||
|
args.getZoneId(),
|
||||||
|
proxy.getPodId(),
|
||||||
|
"Console proxy startup failure. zone: " + dc.getName() + ", proxy: " + proxy.getName() + ", public IP: " + proxy.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress())
|
||||||
|
+ ", error details: " + args.getMessage(),
|
||||||
|
"Console proxy startup failure (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ConsoleProxyAlertEventArgs.PROXY_FIREWALL_ALERT :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Console proxy firewall alert, zone: " + dc.getName() + ", proxy: " +
|
||||||
|
proxy.getName() + ", public IP: " + proxy.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_CONSOLE_PROXY,
|
||||||
|
args.getZoneId(),
|
||||||
|
proxy.getPodId(),
|
||||||
|
"Failed to open console proxy firewall port. zone: " + dc.getName() + ", proxy: " + proxy.getName()
|
||||||
|
+ ", public IP: " + proxy.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (proxy.getPrivateIpAddress() == null ? "N/A" : proxy.getPrivateIpAddress()),
|
||||||
|
"Console proxy alert (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case ConsoleProxyAlertEventArgs.PROXY_STORAGE_ALERT :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Console proxy storage alert, zone: " + dc.getName() + ", proxy: " +
|
||||||
|
proxy.getName() + ", public IP: " + proxy.getPublicIpAddress() + ", private IP: " +
|
||||||
|
proxy.getPrivateIpAddress() + ", message: " + args.getMessage());
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_STORAGE_MISC,
|
||||||
|
args.getZoneId(),
|
||||||
|
proxy.getPodId(),
|
||||||
|
"Console proxy storage issue. zone: " + dc.getName() + ", message: " + args.getMessage(),
|
||||||
|
"Console proxy alert (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params)
|
||||||
|
throws ConfigurationException {
|
||||||
|
|
||||||
|
if (s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Start configuring console proxy alert manager : " + name);
|
||||||
|
|
||||||
|
ComponentLocator locator = ComponentLocator.getCurrentLocator();
|
||||||
|
|
||||||
|
_dcDao = locator.getDao(DataCenterDao.class);
|
||||||
|
if (_dcDao == null) {
|
||||||
|
throw new ConfigurationException("Unable to get " + DataCenterDao.class.getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
_consoleProxyDao = locator.getDao(ConsoleProxyDao.class);
|
||||||
|
if (_consoleProxyDao == null) {
|
||||||
|
throw new ConfigurationException("Unable to get " + ConsoleProxyDao.class.getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
_alertMgr = locator.getManager(AlertManager.class);
|
||||||
|
if (_alertMgr == null) {
|
||||||
|
throw new ConfigurationException("Unable to get " + AlertManager.class.getName());
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
SubscriptionMgr.getInstance().subscribe(ConsoleProxyManager.ALERT_SUBJECT, this, "onProxyAlert");
|
||||||
|
} catch (SecurityException e) {
|
||||||
|
throw new ConfigurationException("Unable to register console proxy event subscription, exception: " + e);
|
||||||
|
} catch (NoSuchMethodException e) {
|
||||||
|
throw new ConfigurationException("Unable to register console proxy event subscription, exception: " + e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return _name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean start() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
197
server/src/com/cloud/alert/SecondaryStorageVmAlertAdapter.java
Normal file
197
server/src/com/cloud/alert/SecondaryStorageVmAlertAdapter.java
Normal file
@ -0,0 +1,197 @@
|
|||||||
|
package com.cloud.alert;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.alert.AlertAdapter;
|
||||||
|
import com.cloud.alert.AlertManager;
|
||||||
|
import com.cloud.consoleproxy.ConsoleProxyManager;
|
||||||
|
import com.cloud.dc.DataCenterVO;
|
||||||
|
import com.cloud.dc.dao.DataCenterDao;
|
||||||
|
import com.cloud.storage.secondary.SecStorageVmAlertEventArgs;
|
||||||
|
import com.cloud.storage.secondary.SecondaryStorageVmManager;
|
||||||
|
import com.cloud.utils.component.Inject;
|
||||||
|
import com.cloud.utils.events.SubscriptionMgr;
|
||||||
|
import com.cloud.vm.SecondaryStorageVmVO;
|
||||||
|
import com.cloud.vm.dao.SecondaryStorageVmDao;
|
||||||
|
|
||||||
|
@Local(value=AlertAdapter.class)
|
||||||
|
public class SecondaryStorageVmAlertAdapter implements AlertAdapter {
|
||||||
|
|
||||||
|
private static final Logger s_logger = Logger.getLogger(SecondaryStorageVmAlertAdapter.class);
|
||||||
|
private String _name;
|
||||||
|
|
||||||
|
@Inject private AlertManager _alertMgr;
|
||||||
|
@Inject private DataCenterDao _dcDao;
|
||||||
|
@Inject private SecondaryStorageVmDao _ssvmDao;
|
||||||
|
|
||||||
|
public void onSSVMAlert(Object sender, SecStorageVmAlertEventArgs args) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("received secondary storage vm alert");
|
||||||
|
|
||||||
|
DataCenterVO dc = _dcDao.findById(args.getZoneId());
|
||||||
|
SecondaryStorageVmVO secStorageVm = args.getSecStorageVm();
|
||||||
|
if(secStorageVm == null)
|
||||||
|
secStorageVm = _ssvmDao.findById(args.getSecStorageVmId());
|
||||||
|
|
||||||
|
switch(args.getType()) {
|
||||||
|
case SecStorageVmAlertEventArgs.SSVM_CREATED :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("New secondary storage vm created, zone: " + dc.getName() + ", secStorageVm: " +
|
||||||
|
secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress() + ", private IP: " +
|
||||||
|
secStorageVm.getPrivateIpAddress());
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SecStorageVmAlertEventArgs.SSVM_UP :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Secondary Storage Vm is up, zone: " + dc.getName() + ", secStorageVm: " +
|
||||||
|
secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress() + ", private IP: " +
|
||||||
|
secStorageVm.getPrivateIpAddress());
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_SSVM,
|
||||||
|
args.getZoneId(),
|
||||||
|
secStorageVm.getPodId(),
|
||||||
|
"Secondary Storage Vm up in zone: " + dc.getName() + ", secStorageVm: " + secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()),
|
||||||
|
"Secondary Storage Vm up (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SecStorageVmAlertEventArgs.SSVM_DOWN :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Secondary Storage Vm is down, zone: " + dc.getName() + ", secStorageVm: " +
|
||||||
|
secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_SSVM,
|
||||||
|
args.getZoneId(),
|
||||||
|
secStorageVm.getPodId(),
|
||||||
|
"Secondary Storage Vm down in zone: " + dc.getName() + ", secStorageVm: " + secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()),
|
||||||
|
"Secondary Storage Vm down (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SecStorageVmAlertEventArgs.SSVM_REBOOTED :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Secondary Storage Vm is rebooted, zone: " + dc.getName() + ", secStorageVm: " +
|
||||||
|
secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_SSVM,
|
||||||
|
args.getZoneId(),
|
||||||
|
secStorageVm.getPodId(),
|
||||||
|
"Secondary Storage Vm rebooted in zone: " + dc.getName() + ", secStorageVm: " + secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()),
|
||||||
|
"Secondary Storage Vm rebooted (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SecStorageVmAlertEventArgs.SSVM_CREATE_FAILURE :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Secondary Storage Vm creation failure, zone: " + dc.getName() + ", secStorageVm: " +
|
||||||
|
secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_SSVM,
|
||||||
|
args.getZoneId(),
|
||||||
|
secStorageVm.getPodId(),
|
||||||
|
"Secondary Storage Vm creation failure. zone: " + dc.getName() + ", secStorageVm: " + secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress())
|
||||||
|
+ ", error details: " + args.getMessage(),
|
||||||
|
"Secondary Storage Vm creation failure (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SecStorageVmAlertEventArgs.SSVM_START_FAILURE :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Secondary Storage Vm startup failure, zone: " + dc.getName() + ", secStorageVm: " +
|
||||||
|
secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_SSVM,
|
||||||
|
args.getZoneId(),
|
||||||
|
secStorageVm.getPodId(),
|
||||||
|
"Secondary Storage Vm startup failure. zone: " + dc.getName() + ", secStorageVm: " + secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress())
|
||||||
|
+ ", error details: " + args.getMessage(),
|
||||||
|
"Secondary Storage Vm startup failure (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SecStorageVmAlertEventArgs.SSVM_FIREWALL_ALERT :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Secondary Storage Vm firewall alert, zone: " + dc.getName() + ", secStorageVm: " +
|
||||||
|
secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress() + ", private IP: " +
|
||||||
|
(secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()));
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_SSVM,
|
||||||
|
args.getZoneId(),
|
||||||
|
secStorageVm.getPodId(),
|
||||||
|
"Failed to open secondary storage vm firewall port. zone: " + dc.getName() + ", secStorageVm: " + secStorageVm.getName()
|
||||||
|
+ ", public IP: " + secStorageVm.getPublicIpAddress()
|
||||||
|
+ ", private IP: " + (secStorageVm.getPrivateIpAddress() == null ? "N/A" : secStorageVm.getPrivateIpAddress()),
|
||||||
|
"Secondary Storage Vm alert (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case SecStorageVmAlertEventArgs.SSVM_STORAGE_ALERT :
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Secondary Storage Vm storage alert, zone: " + dc.getName() + ", secStorageVm: " +
|
||||||
|
secStorageVm.getName() + ", public IP: " + secStorageVm.getPublicIpAddress() + ", private IP: " +
|
||||||
|
secStorageVm.getPrivateIpAddress() + ", message: " + args.getMessage());
|
||||||
|
|
||||||
|
_alertMgr.sendAlert(
|
||||||
|
AlertManager.ALERT_TYPE_STORAGE_MISC,
|
||||||
|
args.getZoneId(),
|
||||||
|
secStorageVm.getPodId(),
|
||||||
|
"Secondary Storage Vm storage issue. zone: " + dc.getName() + ", message: " + args.getMessage(),
|
||||||
|
"Secondary Storage Vm alert (zone " + dc.getName() + ")"
|
||||||
|
);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params)
|
||||||
|
throws ConfigurationException {
|
||||||
|
|
||||||
|
if (s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Start configuring secondary storage vm alert manager : " + name);
|
||||||
|
|
||||||
|
try {
|
||||||
|
SubscriptionMgr.getInstance().subscribe(SecondaryStorageVmManager.ALERT_SUBJECT, this, "onSSVMAlert");
|
||||||
|
} catch (SecurityException e) {
|
||||||
|
throw new ConfigurationException("Unable to register secondary storage vm event subscription, exception: " + e);
|
||||||
|
} catch (NoSuchMethodException e) {
|
||||||
|
throw new ConfigurationException("Unable to register secondary storage vm event subscription, exception: " + e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return _name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean start() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,63 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import com.cloud.agent.Listener;
|
||||||
|
import com.cloud.agent.api.AgentControlAnswer;
|
||||||
|
import com.cloud.agent.api.AgentControlCommand;
|
||||||
|
import com.cloud.agent.api.Answer;
|
||||||
|
import com.cloud.agent.api.Command;
|
||||||
|
import com.cloud.agent.api.StartupCommand;
|
||||||
|
import com.cloud.host.HostVO;
|
||||||
|
import com.cloud.host.Status;
|
||||||
|
|
||||||
|
public class ClusterAsyncExectuionListener implements Listener {
|
||||||
|
private final ClusterManager clusterMgr;
|
||||||
|
private final String callingPeer;
|
||||||
|
private boolean recurring = false;
|
||||||
|
|
||||||
|
public ClusterAsyncExectuionListener(ClusterManager clusterMgr, String callingPeer) {
|
||||||
|
this.clusterMgr = clusterMgr;
|
||||||
|
this.callingPeer = callingPeer;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean processAnswers(long agentId, long seq, Answer[] answers) {
|
||||||
|
recurring = clusterMgr.forwardAnswer(callingPeer, agentId, seq, answers);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean processCommands(long agentId, long seq, Command[] commands) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AgentControlAnswer processControlCommand(long agentId, AgentControlCommand cmd) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void processConnect(HostVO agent, StartupCommand cmd) {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean processDisconnect(long agentId, Status state) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isRecurring() {
|
||||||
|
return recurring;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean processTimeout(long agentId, long seq) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getTimeout() {
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
706
server/src/com/cloud/cluster/ClusterManagerImpl.java
Normal file
706
server/src/com/cloud/cluster/ClusterManagerImpl.java
Normal file
@ -0,0 +1,706 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.FileNotFoundException;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.Enumeration;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Properties;
|
||||||
|
import java.util.concurrent.ExecutorService;
|
||||||
|
import java.util.concurrent.Executors;
|
||||||
|
import java.util.concurrent.ScheduledExecutorService;
|
||||||
|
import java.util.concurrent.TimeUnit;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.agent.AgentManager;
|
||||||
|
import com.cloud.agent.AgentManager.OnError;
|
||||||
|
import com.cloud.agent.Listener;
|
||||||
|
import com.cloud.agent.api.Answer;
|
||||||
|
import com.cloud.agent.api.ChangeAgentCommand;
|
||||||
|
import com.cloud.agent.api.Command;
|
||||||
|
import com.cloud.agent.manager.Commands;
|
||||||
|
import com.cloud.cluster.dao.ManagementServerHostDao;
|
||||||
|
import com.cloud.configuration.dao.ConfigurationDao;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.exception.OperationTimedoutException;
|
||||||
|
import com.cloud.host.HostVO;
|
||||||
|
import com.cloud.host.Status.Event;
|
||||||
|
import com.cloud.host.dao.HostDao;
|
||||||
|
import com.cloud.serializer.GsonHelper;
|
||||||
|
import com.cloud.utils.DateUtil;
|
||||||
|
import com.cloud.utils.NumbersUtil;
|
||||||
|
import com.cloud.utils.PropertiesUtil;
|
||||||
|
import com.cloud.utils.component.Adapters;
|
||||||
|
import com.cloud.utils.component.ComponentLocator;
|
||||||
|
import com.cloud.utils.concurrency.NamedThreadFactory;
|
||||||
|
import com.cloud.utils.db.DB;
|
||||||
|
import com.cloud.utils.db.Transaction;
|
||||||
|
import com.cloud.utils.events.SubscriptionMgr;
|
||||||
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
|
import com.cloud.utils.net.MacAddress;
|
||||||
|
import com.cloud.utils.net.NetUtils;
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
|
||||||
|
@Local(value={ClusterManager.class})
|
||||||
|
public class ClusterManagerImpl implements ClusterManager {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ClusterManagerImpl.class);
|
||||||
|
|
||||||
|
private static final int EXECUTOR_SHUTDOWN_TIMEOUT = 1000; // 1 second
|
||||||
|
|
||||||
|
private final List<ClusterManagerListener> listeners = new ArrayList<ClusterManagerListener>();
|
||||||
|
private final Map<Long, ManagementServerHostVO> activePeers = new HashMap<Long, ManagementServerHostVO>();
|
||||||
|
private int heartbeatInterval = ClusterManager.DEFAULT_HEARTBEAT_INTERVAL;
|
||||||
|
private int heartbeatThreshold = ClusterManager.DEFAULT_HEARTBEAT_THRESHOLD;
|
||||||
|
|
||||||
|
private final Map<String, ClusterService> clusterPeers;
|
||||||
|
private final Map<String, Listener> asyncCalls;
|
||||||
|
private final Gson gson;
|
||||||
|
|
||||||
|
private AgentManager _agentMgr;
|
||||||
|
|
||||||
|
private final ScheduledExecutorService _heartbeatScheduler =
|
||||||
|
Executors.newScheduledThreadPool(1, new NamedThreadFactory("Cluster-Heartbeat"));
|
||||||
|
|
||||||
|
private final ExecutorService _executor;
|
||||||
|
|
||||||
|
private ClusterServiceAdapter _currentServiceAdapter;
|
||||||
|
|
||||||
|
private ManagementServerHostDao _mshostDao;
|
||||||
|
private HostDao _hostDao;
|
||||||
|
|
||||||
|
protected long _id = MacAddress.getMacAddress().toLong();
|
||||||
|
|
||||||
|
private Long _mshostId = null;
|
||||||
|
|
||||||
|
private String _name;
|
||||||
|
private String _clusterNodeIP = "127.0.0.1";
|
||||||
|
|
||||||
|
public ClusterManagerImpl() {
|
||||||
|
clusterPeers = new HashMap<String, ClusterService>();
|
||||||
|
asyncCalls = new HashMap<String, Listener>();
|
||||||
|
|
||||||
|
gson = GsonHelper.getBuilder().create();
|
||||||
|
|
||||||
|
// executor to perform remote-calls in another thread context, to avoid potential
|
||||||
|
// recursive remote calls between nodes
|
||||||
|
//
|
||||||
|
_executor = Executors.newCachedThreadPool(new NamedThreadFactory("Cluster-Worker"));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Answer[] sendToAgent(Long hostId, Command [] cmds, boolean stopOnError)
|
||||||
|
throws AgentUnavailableException, OperationTimedoutException {
|
||||||
|
Commands commands = new Commands(stopOnError ? OnError.Stop : OnError.Continue);
|
||||||
|
for (Command cmd : cmds) {
|
||||||
|
commands.addCommand(cmd);
|
||||||
|
}
|
||||||
|
return _agentMgr.send(hostId, commands);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long sendToAgent(Long hostId, Command[] cmds, boolean stopOnError, Listener listener)
|
||||||
|
throws AgentUnavailableException {
|
||||||
|
Commands commands = new Commands(stopOnError ? OnError.Stop : OnError.Continue);
|
||||||
|
for (Command cmd : cmds) {
|
||||||
|
commands.addCommand(cmd);
|
||||||
|
}
|
||||||
|
return _agentMgr.send(hostId, commands, listener);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean executeAgentUserRequest(long agentId, Event event) throws AgentUnavailableException {
|
||||||
|
return _agentMgr.executeUserRequest(agentId, event);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean propagateAgentEvent(long agentId, Event event) throws AgentUnavailableException {
|
||||||
|
final String msPeer = getPeerName(agentId);
|
||||||
|
if (msPeer == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Propagating agent change request event:" + event.toString() + " to agent:"+ agentId);
|
||||||
|
}
|
||||||
|
Command[] cmds = new Command[1];
|
||||||
|
cmds[0] = new ChangeAgentCommand(agentId, event);
|
||||||
|
|
||||||
|
Answer[] answers = execute(msPeer, agentId, cmds, true);
|
||||||
|
if (answers == null) {
|
||||||
|
throw new AgentUnavailableException(agentId);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Result for agent change is " + answers[0].getResult());
|
||||||
|
}
|
||||||
|
|
||||||
|
return answers[0].getResult();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void broadcast(long agentId, Command[] cmds) {
|
||||||
|
List<ManagementServerHostVO> peers = _mshostDao.getActiveList(new Date());
|
||||||
|
for (ManagementServerHostVO peer : peers) {
|
||||||
|
String peerName = Long.toString(peer.getMsid());
|
||||||
|
if (getSelfPeerName().equals(peerName)) {
|
||||||
|
continue; // Skip myself.
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Forwarding " + cmds[0].toString() + " to " + peer.getMsid());
|
||||||
|
}
|
||||||
|
Answer[] answers = execute(peerName, agentId, cmds, true);
|
||||||
|
} catch (Exception e) {
|
||||||
|
s_logger.warn("Caught exception while talkign to " + peer.getMsid());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Answer[] execute(String strPeer, long agentId, Command [] cmds, boolean stopOnError) {
|
||||||
|
ClusterService peerService = null;
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug(getSelfPeerName() + " -> " + strPeer + "." + agentId + " " +
|
||||||
|
gson.toJson(cmds, Command[].class));
|
||||||
|
|
||||||
|
for(int i = 0; i < 2; i++) {
|
||||||
|
try {
|
||||||
|
peerService = getPeerService(strPeer);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
s_logger.error("Unable to get cluster service on peer : " + strPeer);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(peerService != null) {
|
||||||
|
try {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Send " + getSelfPeerName() + " -> " + strPeer + "." + agentId + " to remote");
|
||||||
|
|
||||||
|
long startTick = System.currentTimeMillis();
|
||||||
|
String strResult = peerService.execute(getSelfPeerName(), agentId, gson.toJson(cmds, Command[].class), stopOnError);
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Completed " + getSelfPeerName() + " -> " + strPeer + "." + agentId + "in " +
|
||||||
|
(System.currentTimeMillis() - startTick) + " ms, result: " + strResult);
|
||||||
|
|
||||||
|
if(strResult != null) {
|
||||||
|
try {
|
||||||
|
return gson.fromJson(strResult, Answer[].class);
|
||||||
|
} catch(Throwable e) {
|
||||||
|
s_logger.error("Exception on parsing gson package from remote call to " + strPeer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
invalidatePeerService(strPeer);
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Exception on remote execution, peer: " + strPeer + ", iteration: "
|
||||||
|
+ i + ", exception message :" + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long executeAsync(String strPeer, long agentId, Command[] cmds, boolean stopOnError, Listener listener) {
|
||||||
|
|
||||||
|
ClusterService peerService = null;
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Async " + getSelfPeerName() + " -> " + strPeer + "." + agentId + " " +
|
||||||
|
gson.toJson(cmds, Command[].class));
|
||||||
|
|
||||||
|
for(int i = 0; i < 2; i++) {
|
||||||
|
try {
|
||||||
|
peerService = getPeerService(strPeer);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
s_logger.error("Unable to get cluster service on peer : " + strPeer);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(peerService != null) {
|
||||||
|
try {
|
||||||
|
long seq = 0;
|
||||||
|
synchronized(String.valueOf(agentId).intern()) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Send Async " + getSelfPeerName() + " -> " + strPeer + "." + agentId + " to remote");
|
||||||
|
|
||||||
|
long startTick = System.currentTimeMillis();
|
||||||
|
seq = peerService.executeAsync(getSelfPeerName(), agentId, gson.toJson(cmds, Command[].class), stopOnError);
|
||||||
|
|
||||||
|
if(seq > 0) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Completed Async " + getSelfPeerName() + " -> " + strPeer + "." + agentId
|
||||||
|
+ " in " + (System.currentTimeMillis() - startTick) + " ms"
|
||||||
|
+ ", register local listener " + strPeer + "/" + seq);
|
||||||
|
|
||||||
|
registerAsyncCall(strPeer, seq, listener);
|
||||||
|
} else {
|
||||||
|
s_logger.warn("Completed Async " + getSelfPeerName() + " -> " + strPeer + "." + agentId
|
||||||
|
+ " in " + (System.currentTimeMillis() - startTick) + " ms, return indicates failure, seq: " + seq);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return seq;
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
invalidatePeerService(strPeer);
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Exception on remote execution -> " + strPeer + ", iteration : " + i);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return 0L;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onAsyncResult(String executingPeer, long agentId, long seq, Answer[] answers) {
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Process Async-call result from remote peer " + executingPeer + ", {" +
|
||||||
|
agentId + "-" + seq + "} answers: " + (answers != null ? gson.toJson(answers, Answer[].class): "null"));
|
||||||
|
|
||||||
|
Listener listener = null;
|
||||||
|
synchronized(String.valueOf(agentId).intern()) {
|
||||||
|
// need to synchronize it with executeAsync() to make sure listener have been registered
|
||||||
|
// before this callback reaches back
|
||||||
|
listener = getAsyncCallListener(executingPeer, seq);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(listener != null) {
|
||||||
|
long startTick = System.currentTimeMillis();
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Processing answer {" + agentId + "-" + seq + "} from remote peer " + executingPeer);
|
||||||
|
|
||||||
|
listener.processAnswers(agentId, seq, answers);
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Answer {" + agentId + "-" + seq + "} is processed in " +
|
||||||
|
(System.currentTimeMillis() - startTick) + " ms");
|
||||||
|
|
||||||
|
if(!listener.isRecurring()) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Listener is not recurring after async-result callback {" +
|
||||||
|
agentId + "-" + seq + "}, unregister it");
|
||||||
|
|
||||||
|
unregisterAsyncCall(executingPeer, seq);
|
||||||
|
} else {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Listener is recurring after async-result callback {" + agentId
|
||||||
|
+"-" + seq + "}, will keep it");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Async-call Listener has not been registered yet for {" + agentId
|
||||||
|
+"-" + seq + "}");
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean forwardAnswer(String targetPeer, long agentId, long seq, Answer[] answers) {
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Forward -> " + targetPeer + " Async-call answer {" + agentId + "-" + seq +
|
||||||
|
"} " + (answers != null? gson.toJson(answers, Answer[].class):""));
|
||||||
|
|
||||||
|
final String targetPeerF = targetPeer;
|
||||||
|
final Answer[] answersF = answers;
|
||||||
|
final long agentIdF = agentId;
|
||||||
|
final long seqF = seq;
|
||||||
|
|
||||||
|
ClusterService peerService = null;
|
||||||
|
|
||||||
|
for(int i = 0; i < 2; i++) {
|
||||||
|
try {
|
||||||
|
peerService = getPeerService(targetPeerF);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
s_logger.error("cluster service for peer " + targetPeerF + " no longer exists");
|
||||||
|
}
|
||||||
|
|
||||||
|
if(peerService != null) {
|
||||||
|
try {
|
||||||
|
boolean result = false;
|
||||||
|
|
||||||
|
long startTick = System.currentTimeMillis();
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Start forwarding Async-call answer {" + agentId + "-" + seq + "} to remote");
|
||||||
|
|
||||||
|
result = peerService.onAsyncResult(getSelfPeerName(), agentIdF, seqF, gson.toJson(answersF, Answer[].class));
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Completed forwarding Async-call answer {" + agentId + "-" + seq + "} in " +
|
||||||
|
(System.currentTimeMillis() - startTick) + " ms, return result: " + result);
|
||||||
|
|
||||||
|
return result;
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
s_logger.warn("Exception in performing remote call, ", e);
|
||||||
|
invalidatePeerService(targetPeerF);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
s_logger.warn("Remote peer " + targetPeer + " no longer exists to process answer {" + agentId + "-"
|
||||||
|
+ seq + "}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getPeerName(long agentHostId) {
|
||||||
|
|
||||||
|
HostVO host = _hostDao.findById(agentHostId);
|
||||||
|
if(host != null && host.getManagementServerId() != null) {
|
||||||
|
if(getSelfPeerName().equals(Long.toString(host.getManagementServerId())))
|
||||||
|
return null;
|
||||||
|
|
||||||
|
return Long.toString(host.getManagementServerId());
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ManagementServerHostVO getPeer(String mgmtServerId) {
|
||||||
|
return _mshostDao.findByMsid(Long.valueOf(mgmtServerId));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getSelfPeerName() {
|
||||||
|
return Long.toString(_id);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getSelfNodeIP() {
|
||||||
|
return _clusterNodeIP;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void registerListener(ClusterManagerListener listener) {
|
||||||
|
// Note : we don't check duplicates
|
||||||
|
synchronized(listeners) {
|
||||||
|
listeners.add(listener);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void unregisterListener(ClusterManagerListener listener) {
|
||||||
|
synchronized(listeners) {
|
||||||
|
listeners.remove(listener);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void notifyNodeJoined(List<ManagementServerHostVO> nodeList) {
|
||||||
|
synchronized(listeners) {
|
||||||
|
for(ClusterManagerListener listener : listeners) {
|
||||||
|
listener.onManagementNodeJoined(nodeList, _mshostId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubscriptionMgr.getInstance().notifySubscribers(ClusterManager.ALERT_SUBJECT, this,
|
||||||
|
new ClusterNodeJoinEventArgs(_mshostId, nodeList));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void notifyNodeLeft(List<ManagementServerHostVO> nodeList) {
|
||||||
|
synchronized(listeners) {
|
||||||
|
for(ClusterManagerListener listener : listeners) {
|
||||||
|
listener.onManagementNodeLeft(nodeList, _mshostId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
SubscriptionMgr.getInstance().notifySubscribers(ClusterManager.ALERT_SUBJECT, this,
|
||||||
|
new ClusterNodeLeftEventArgs(_mshostId, nodeList));
|
||||||
|
}
|
||||||
|
|
||||||
|
public ClusterService getPeerService(String strPeer) throws RemoteException {
|
||||||
|
synchronized(clusterPeers) {
|
||||||
|
if(clusterPeers.containsKey(strPeer))
|
||||||
|
return clusterPeers.get(strPeer);
|
||||||
|
}
|
||||||
|
|
||||||
|
ClusterService service = _currentServiceAdapter.getPeerService(strPeer);
|
||||||
|
|
||||||
|
if(service != null) {
|
||||||
|
synchronized(clusterPeers) {
|
||||||
|
// re-check the peer map again to deal with the
|
||||||
|
// race conditions
|
||||||
|
if(!clusterPeers.containsKey(strPeer))
|
||||||
|
clusterPeers.put(strPeer, service);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return service;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void invalidatePeerService(String strPeer) {
|
||||||
|
synchronized(clusterPeers) {
|
||||||
|
if(clusterPeers.containsKey(strPeer))
|
||||||
|
clusterPeers.remove(strPeer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void registerAsyncCall(String strPeer, long seq, Listener listener) {
|
||||||
|
String key = strPeer + "/" + seq;
|
||||||
|
|
||||||
|
synchronized(asyncCalls) {
|
||||||
|
if(!asyncCalls.containsKey(key))
|
||||||
|
asyncCalls.put(key, listener);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private Listener getAsyncCallListener(String strPeer, long seq) {
|
||||||
|
String key = strPeer + "/" + seq;
|
||||||
|
|
||||||
|
synchronized(asyncCalls) {
|
||||||
|
if(asyncCalls.containsKey(key))
|
||||||
|
return asyncCalls.get(key);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void unregisterAsyncCall(String strPeer, long seq) {
|
||||||
|
String key = strPeer + "/" + seq;
|
||||||
|
|
||||||
|
synchronized(asyncCalls) {
|
||||||
|
if(asyncCalls.containsKey(key))
|
||||||
|
asyncCalls.remove(key);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private Runnable getHeartbeatTask() {
|
||||||
|
return new Runnable() {
|
||||||
|
@Override
|
||||||
|
public void run() {
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("Cluster manager heartbeat update, id:" + _mshostId);
|
||||||
|
|
||||||
|
_mshostDao.update(_mshostId, DateUtil.currentGMTTime());
|
||||||
|
peerScan();
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
private void peerScan() {
|
||||||
|
Date cutTime = DateUtil.currentGMTTime();
|
||||||
|
|
||||||
|
List<ManagementServerHostVO> currentList = _mshostDao.getActiveList(new Date(cutTime.getTime() - heartbeatThreshold));
|
||||||
|
|
||||||
|
List<ManagementServerHostVO> removedNodeList = new ArrayList<ManagementServerHostVO>();
|
||||||
|
if(_mshostId != null) {
|
||||||
|
// only if we have already attached to cluster, will we start to check leaving nodes
|
||||||
|
for(Map.Entry<Long, ManagementServerHostVO> entry : activePeers.entrySet()) {
|
||||||
|
if(!isIdInList(entry.getKey(), currentList)) {
|
||||||
|
if(entry.getKey().longValue() != _mshostId.longValue()) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Detected management node left, id:" + entry.getKey() + ", nodeIP:" + entry.getValue().getServiceIP());
|
||||||
|
removedNodeList.add(entry.getValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
for(ManagementServerHostVO mshost : removedNodeList) {
|
||||||
|
activePeers.remove(mshost.getId());
|
||||||
|
}
|
||||||
|
|
||||||
|
List<ManagementServerHostVO> newNodeList = new ArrayList<ManagementServerHostVO>();
|
||||||
|
for(ManagementServerHostVO mshost : currentList) {
|
||||||
|
if(!activePeers.containsKey(mshost.getId())) {
|
||||||
|
activePeers.put(mshost.getId(), mshost);
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Detected management node joined, id:" + mshost.getId() + ", nodeIP:" + mshost.getServiceIP());
|
||||||
|
newNodeList.add(mshost);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if(newNodeList.size() > 0)
|
||||||
|
notifyNodeJoined(newNodeList);
|
||||||
|
|
||||||
|
if(removedNodeList.size() > 0)
|
||||||
|
notifyNodeLeft(removedNodeList);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static boolean isIdInList(Long id, List<ManagementServerHostVO> l) {
|
||||||
|
for(ManagementServerHostVO mshost : l) {
|
||||||
|
if(mshost.getId() != null && mshost.getId() == id)
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return _name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override @DB
|
||||||
|
public boolean start() {
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Starting cluster manager, msid : " + _id);
|
||||||
|
|
||||||
|
Transaction txn = Transaction.currentTxn();
|
||||||
|
try {
|
||||||
|
txn.start();
|
||||||
|
|
||||||
|
final Class<?> c = this.getClass();
|
||||||
|
String version = c.getPackage().getImplementationVersion();
|
||||||
|
|
||||||
|
ManagementServerHostVO mshost = _mshostDao.findByMsid(_id);
|
||||||
|
if(mshost == null) {
|
||||||
|
mshost = new ManagementServerHostVO();
|
||||||
|
mshost.setMsid(_id);
|
||||||
|
|
||||||
|
mshost.setName(NetUtils.getHostName());
|
||||||
|
mshost.setVersion(version);
|
||||||
|
mshost.setServiceIP(_clusterNodeIP);
|
||||||
|
mshost.setServicePort(_currentServiceAdapter.getServicePort());
|
||||||
|
mshost.setLastUpdateTime(DateUtil.currentGMTTime());
|
||||||
|
mshost.setRemoved(null);
|
||||||
|
mshost.setAlertCount(0);
|
||||||
|
_mshostDao.persist(mshost);
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("New instance of management server msid " + _id + " is being started");
|
||||||
|
} else {
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Management server " + _id + " is being started");
|
||||||
|
|
||||||
|
_mshostDao.update(mshost.getId(), NetUtils.getHostName(), version,
|
||||||
|
_clusterNodeIP, _currentServiceAdapter.getServicePort(), DateUtil.currentGMTTime());
|
||||||
|
}
|
||||||
|
|
||||||
|
txn.commit();
|
||||||
|
|
||||||
|
_mshostId = mshost.getId();
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Management server (host id : " + _mshostId + ") is available at " + _clusterNodeIP + ":" + _currentServiceAdapter.getServicePort());
|
||||||
|
|
||||||
|
_heartbeatScheduler.scheduleAtFixedRate(getHeartbeatTask(), heartbeatInterval,
|
||||||
|
heartbeatInterval, TimeUnit.MILLISECONDS);
|
||||||
|
|
||||||
|
} catch (Throwable e) {
|
||||||
|
s_logger.error("Unexpected exception : ", e);
|
||||||
|
txn.rollback();
|
||||||
|
|
||||||
|
throw new CloudRuntimeException("Unable to initialize cluster info into database");
|
||||||
|
}
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Cluster manager is started");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
if(_mshostId != null)
|
||||||
|
_mshostDao.remove(_mshostId);
|
||||||
|
|
||||||
|
_heartbeatScheduler.shutdownNow();
|
||||||
|
_executor.shutdownNow();
|
||||||
|
|
||||||
|
try {
|
||||||
|
_heartbeatScheduler.awaitTermination(EXECUTOR_SHUTDOWN_TIMEOUT, TimeUnit.MILLISECONDS);
|
||||||
|
_executor.awaitTermination(EXECUTOR_SHUTDOWN_TIMEOUT, TimeUnit.MILLISECONDS);
|
||||||
|
} catch (InterruptedException e) {
|
||||||
|
}
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Cluster manager is stopped");
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Start configuring cluster manager : " + name);
|
||||||
|
|
||||||
|
ComponentLocator locator = ComponentLocator.getCurrentLocator();
|
||||||
|
_agentMgr = locator.getManager(AgentManager.class);
|
||||||
|
if (_agentMgr == null)
|
||||||
|
throw new ConfigurationException("Unable to get " + AgentManager.class.getName());
|
||||||
|
|
||||||
|
_mshostDao = locator.getDao(ManagementServerHostDao.class);
|
||||||
|
if(_mshostDao == null)
|
||||||
|
throw new ConfigurationException("Unable to get " + ManagementServerHostDao.class.getName());
|
||||||
|
|
||||||
|
_hostDao = locator.getDao(HostDao.class);
|
||||||
|
if(_hostDao == null)
|
||||||
|
throw new ConfigurationException("Unable to get " + HostDao.class.getName());
|
||||||
|
|
||||||
|
ConfigurationDao configDao = locator.getDao(ConfigurationDao.class);
|
||||||
|
if (configDao == null) {
|
||||||
|
throw new ConfigurationException("Unable to get the configuration dao.");
|
||||||
|
}
|
||||||
|
|
||||||
|
Map<String, String> configs = configDao.getConfiguration("management-server", params);
|
||||||
|
|
||||||
|
String value = configs.get("cluster.heartbeat.interval");
|
||||||
|
if(value != null)
|
||||||
|
heartbeatInterval = NumbersUtil.parseInt(value, ClusterManager.DEFAULT_HEARTBEAT_INTERVAL);
|
||||||
|
|
||||||
|
value = configs.get("cluster.heartbeat.threshold");
|
||||||
|
if(value != null)
|
||||||
|
heartbeatThreshold = NumbersUtil.parseInt(value, ClusterManager.DEFAULT_HEARTBEAT_THRESHOLD);
|
||||||
|
|
||||||
|
_name = name;
|
||||||
|
|
||||||
|
File dbPropsFile = PropertiesUtil.findConfigFile("db.properties");
|
||||||
|
Properties dbProps = new Properties();
|
||||||
|
try {
|
||||||
|
dbProps.load(new FileInputStream(dbPropsFile));
|
||||||
|
} catch (FileNotFoundException e) {
|
||||||
|
throw new ConfigurationException("Unable to find db.properties");
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new ConfigurationException("Unable to load db.properties content");
|
||||||
|
}
|
||||||
|
_clusterNodeIP = dbProps.getProperty("cluster.node.IP");
|
||||||
|
if(_clusterNodeIP == null)
|
||||||
|
_clusterNodeIP = "127.0.0.1";
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Cluster node IP : " + _clusterNodeIP);
|
||||||
|
|
||||||
|
if(!NetUtils.isLocalAddress(_clusterNodeIP))
|
||||||
|
throw new ConfigurationException("cluster node IP should be valid local address where the server is running, please check your configuration");
|
||||||
|
|
||||||
|
Adapters<ClusterServiceAdapter> adapters = locator.getAdapters(ClusterServiceAdapter.class);
|
||||||
|
if (adapters == null || !adapters.isSet()) {
|
||||||
|
throw new ConfigurationException("Unable to get cluster service adapters");
|
||||||
|
}
|
||||||
|
Enumeration<ClusterServiceAdapter> it = adapters.enumeration();
|
||||||
|
if(it.hasMoreElements())
|
||||||
|
_currentServiceAdapter = it.nextElement();
|
||||||
|
|
||||||
|
if(_currentServiceAdapter == null)
|
||||||
|
throw new ConfigurationException("Unable to set current cluster service adapter");
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Cluster manager is configured.");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long getId() {
|
||||||
|
return _id;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getHeartbeatThreshold() {
|
||||||
|
return this.heartbeatThreshold;
|
||||||
|
}
|
||||||
|
}
|
||||||
12
server/src/com/cloud/cluster/ClusterServiceAdapter.java
Normal file
12
server/src/com/cloud/cluster/ClusterServiceAdapter.java
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
|
||||||
|
import com.cloud.cluster.ClusterService;
|
||||||
|
import com.cloud.utils.component.Adapter;
|
||||||
|
|
||||||
|
public interface ClusterServiceAdapter extends Adapter {
|
||||||
|
public ClusterService getPeerService(String strPeer) throws RemoteException;
|
||||||
|
public String getServiceEndpointName(String strPeer);
|
||||||
|
public int getServicePort();
|
||||||
|
}
|
||||||
136
server/src/com/cloud/cluster/ClusterServiceRMIAdapter.java
Normal file
136
server/src/com/cloud/cluster/ClusterServiceRMIAdapter.java
Normal file
@ -0,0 +1,136 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.FileNotFoundException;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.net.MalformedURLException;
|
||||||
|
import java.rmi.Naming;
|
||||||
|
import java.rmi.NotBoundException;
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
import java.rmi.registry.LocateRegistry;
|
||||||
|
import java.rmi.registry.Registry;
|
||||||
|
import java.rmi.server.UnicastRemoteObject;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.cluster.ClusterManager;
|
||||||
|
import com.cloud.cluster.ClusterService;
|
||||||
|
import com.cloud.cluster.ManagementServerHostVO;
|
||||||
|
import com.cloud.cluster.dao.ManagementServerHostDao;
|
||||||
|
import com.cloud.utils.NumbersUtil;
|
||||||
|
import com.cloud.utils.PropertiesUtil;
|
||||||
|
import com.cloud.utils.component.ComponentLocator;
|
||||||
|
|
||||||
|
@Local(value={ClusterServiceAdapter.class})
|
||||||
|
public class ClusterServiceRMIAdapter implements ClusterServiceAdapter {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ClusterServiceRMIAdapter.class);
|
||||||
|
private static final int DEFAULT_SERVICE_PORT = 1099;
|
||||||
|
|
||||||
|
private ClusterManager manager;
|
||||||
|
|
||||||
|
private ManagementServerHostDao _mshostDao;
|
||||||
|
|
||||||
|
private String _name;
|
||||||
|
private int _clusterServicePort = DEFAULT_SERVICE_PORT;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ClusterService getPeerService(String strPeer) throws RemoteException {
|
||||||
|
try {
|
||||||
|
return (ClusterService)Naming.lookup(getServiceEndpointName(strPeer));
|
||||||
|
} catch (MalformedURLException e) {
|
||||||
|
s_logger.error("Malformed URL in cluster peer name");
|
||||||
|
} catch (NotBoundException e) {
|
||||||
|
s_logger.error("Unbound RMI exception");
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getServiceEndpointName(String strPeer) {
|
||||||
|
long msid = Long.parseLong(strPeer);
|
||||||
|
|
||||||
|
ManagementServerHostVO mshost = _mshostDao.findByMsid(msid);
|
||||||
|
if(mshost == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
return composeEndpointName(mshost.getServiceIP(), mshost.getServicePort());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getServicePort() {
|
||||||
|
return _clusterServicePort;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String composeEndpointName(String nodeIP, int port) {
|
||||||
|
StringBuffer sb = new StringBuffer();
|
||||||
|
sb.append("//").append(nodeIP).append(":").append(port).append("/clusterservice");
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
|
||||||
|
_name = name;
|
||||||
|
|
||||||
|
ComponentLocator locator = ComponentLocator.getCurrentLocator();
|
||||||
|
manager = locator.getManager(ClusterManager.class);
|
||||||
|
if(manager == null)
|
||||||
|
throw new ConfigurationException("Unable to get " + ClusterManager.class.getName());
|
||||||
|
|
||||||
|
_mshostDao = locator.getDao(ManagementServerHostDao.class);
|
||||||
|
if(_mshostDao == null)
|
||||||
|
throw new ConfigurationException("Unable to get " + ManagementServerHostDao.class.getName());
|
||||||
|
|
||||||
|
|
||||||
|
File dbPropsFile = PropertiesUtil.findConfigFile("db.properties");
|
||||||
|
Properties dbProps = new Properties();
|
||||||
|
try {
|
||||||
|
dbProps.load(new FileInputStream(dbPropsFile));
|
||||||
|
} catch (FileNotFoundException e) {
|
||||||
|
throw new ConfigurationException("Unable to find db.properties");
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new ConfigurationException("Unable to load db.properties content");
|
||||||
|
}
|
||||||
|
|
||||||
|
_clusterServicePort = NumbersUtil.parseInt(dbProps.getProperty("cluster.rmi.port"), DEFAULT_SERVICE_PORT);
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Cluster RMI port : " + _clusterServicePort);
|
||||||
|
|
||||||
|
// configuration and initialization
|
||||||
|
if (System.getSecurityManager() == null) {
|
||||||
|
System.setSecurityManager(new SecurityManager());
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
ClusterService service = (ClusterService) UnicastRemoteObject.exportObject(
|
||||||
|
new ClusterServiceRMIImpl(manager), 0);
|
||||||
|
Registry registry = LocateRegistry.getRegistry(_clusterServicePort);
|
||||||
|
registry.rebind(composeEndpointName(manager.getSelfNodeIP(), getServicePort()), service);
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new ConfigurationException("Unable to register RMI cluster service");
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return _name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean start() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
92
server/src/com/cloud/cluster/ClusterServiceRMIImpl.java
Normal file
92
server/src/com/cloud/cluster/ClusterServiceRMIImpl.java
Normal file
@ -0,0 +1,92 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.agent.Listener;
|
||||||
|
import com.cloud.agent.api.Answer;
|
||||||
|
import com.cloud.agent.api.Command;
|
||||||
|
import com.cloud.cluster.ClusterManager;
|
||||||
|
import com.cloud.cluster.ClusterService;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.exception.OperationTimedoutException;
|
||||||
|
import com.cloud.serializer.GsonHelper;
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
|
||||||
|
public class ClusterServiceRMIImpl implements ClusterService {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ClusterServiceRMIImpl.class);
|
||||||
|
|
||||||
|
private ClusterManager manager;
|
||||||
|
private Gson gson;
|
||||||
|
|
||||||
|
public ClusterServiceRMIImpl() {
|
||||||
|
gson = GsonHelper.getBuilder().create();
|
||||||
|
}
|
||||||
|
|
||||||
|
public ClusterServiceRMIImpl(ClusterManager manager) {
|
||||||
|
this.manager = manager;
|
||||||
|
|
||||||
|
gson = GsonHelper.getBuilder().create();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String execute(String callingPeer, long agentId, String gsonPackage, boolean stopOnError) throws RemoteException {
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Execute command forwarded from peer : " + callingPeer);
|
||||||
|
|
||||||
|
Command [] cmds = null;
|
||||||
|
try {
|
||||||
|
cmds = gson.fromJson(gsonPackage, Command[].class);
|
||||||
|
} catch(Throwable e) {
|
||||||
|
assert(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
Answer[] answers = manager.sendToAgent(agentId, cmds, stopOnError);
|
||||||
|
if(answers != null)
|
||||||
|
return gson.toJson(answers);
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
s_logger.warn("Agent unavailable", e);
|
||||||
|
} catch (OperationTimedoutException e) {
|
||||||
|
s_logger.warn("Timed Out", e);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long executeAsync(String callingPeer, long agentId, String gsonPackage, boolean stopOnError) throws RemoteException {
|
||||||
|
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Execute Async command forwarded from peer : " + callingPeer);
|
||||||
|
|
||||||
|
Command [] cmds = null;
|
||||||
|
try {
|
||||||
|
cmds = gson.fromJson(gsonPackage, Command[].class);
|
||||||
|
} catch(Throwable e) {
|
||||||
|
assert(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
Listener listener = new ClusterAsyncExectuionListener(manager, callingPeer);
|
||||||
|
try {
|
||||||
|
return manager.sendToAgent(agentId, cmds, stopOnError, listener);
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
s_logger.warn("Agent is unavailable", e);
|
||||||
|
return -1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean onAsyncResult(String executingPeer, long agentId, long seq, String gsonPackage) throws RemoteException {
|
||||||
|
Answer[] answers = null;
|
||||||
|
try {
|
||||||
|
answers = gson.fromJson(gsonPackage, Answer[].class);
|
||||||
|
} catch(Throwable e) {
|
||||||
|
assert(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
return manager.onAsyncResult(executingPeer, agentId, seq, answers);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
116
server/src/com/cloud/cluster/ClusterServiceServletAdapter.java
Normal file
116
server/src/com/cloud/cluster/ClusterServiceServletAdapter.java
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import java.io.File;
|
||||||
|
import java.io.FileInputStream;
|
||||||
|
import java.io.FileNotFoundException;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Properties;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.cluster.ClusterManager;
|
||||||
|
import com.cloud.cluster.ClusterService;
|
||||||
|
import com.cloud.cluster.ManagementServerHostVO;
|
||||||
|
import com.cloud.cluster.dao.ManagementServerHostDao;
|
||||||
|
import com.cloud.utils.NumbersUtil;
|
||||||
|
import com.cloud.utils.PropertiesUtil;
|
||||||
|
import com.cloud.utils.component.ComponentLocator;
|
||||||
|
|
||||||
|
@Local(value={ClusterServiceAdapter.class})
|
||||||
|
public class ClusterServiceServletAdapter implements ClusterServiceAdapter {
|
||||||
|
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ClusterServiceServletAdapter.class);
|
||||||
|
private static final int DEFAULT_SERVICE_PORT = 9090;
|
||||||
|
|
||||||
|
private ClusterManager manager;
|
||||||
|
|
||||||
|
private ManagementServerHostDao _mshostDao;
|
||||||
|
private ClusterServiceServletContainer _servletContainer;
|
||||||
|
|
||||||
|
private String _name;
|
||||||
|
private int _clusterServicePort = DEFAULT_SERVICE_PORT;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ClusterService getPeerService(String strPeer) throws RemoteException {
|
||||||
|
String serviceUrl = getServiceEndpointName(strPeer);
|
||||||
|
return new ClusterServiceServletImpl(serviceUrl);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getServiceEndpointName(String strPeer) {
|
||||||
|
|
||||||
|
long msid = Long.parseLong(strPeer);
|
||||||
|
|
||||||
|
ManagementServerHostVO mshost = _mshostDao.findByMsid(msid);
|
||||||
|
if(mshost == null)
|
||||||
|
return null;
|
||||||
|
|
||||||
|
return composeEndpointName(mshost.getServiceIP(), mshost.getServicePort());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getServicePort() {
|
||||||
|
return _clusterServicePort;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String composeEndpointName(String nodeIP, int port) {
|
||||||
|
StringBuffer sb = new StringBuffer();
|
||||||
|
sb.append("http://").append(nodeIP).append(":").append(port).append("/clusterservice");
|
||||||
|
return sb.toString();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
|
||||||
|
_name = name;
|
||||||
|
|
||||||
|
ComponentLocator locator = ComponentLocator.getCurrentLocator();
|
||||||
|
|
||||||
|
manager = locator.getManager(ClusterManager.class);
|
||||||
|
if(manager == null)
|
||||||
|
throw new ConfigurationException("Unable to get " + ClusterManager.class.getName());
|
||||||
|
|
||||||
|
_mshostDao = locator.getDao(ManagementServerHostDao.class);
|
||||||
|
if(_mshostDao == null)
|
||||||
|
throw new ConfigurationException("Unable to get " + ManagementServerHostDao.class.getName());
|
||||||
|
|
||||||
|
File dbPropsFile = PropertiesUtil.findConfigFile("db.properties");
|
||||||
|
Properties dbProps = new Properties();
|
||||||
|
try {
|
||||||
|
dbProps.load(new FileInputStream(dbPropsFile));
|
||||||
|
} catch (FileNotFoundException e) {
|
||||||
|
throw new ConfigurationException("Unable to find db.properties");
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new ConfigurationException("Unable to load db.properties content");
|
||||||
|
}
|
||||||
|
|
||||||
|
_clusterServicePort = NumbersUtil.parseInt(dbProps.getProperty("cluster.servlet.port"), DEFAULT_SERVICE_PORT);
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Cluster servlet port : " + _clusterServicePort);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return _name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean start() {
|
||||||
|
_servletContainer = new ClusterServiceServletContainer();
|
||||||
|
_servletContainer.start(new ClusterServiceServletHttpHandler(manager), _clusterServicePort);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
if(_servletContainer != null)
|
||||||
|
_servletContainer.stop();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
149
server/src/com/cloud/cluster/ClusterServiceServletContainer.java
Normal file
149
server/src/com/cloud/cluster/ClusterServiceServletContainer.java
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.io.InterruptedIOException;
|
||||||
|
import java.net.ServerSocket;
|
||||||
|
import java.net.Socket;
|
||||||
|
import java.util.concurrent.ExecutorService;
|
||||||
|
import java.util.concurrent.Executors;
|
||||||
|
|
||||||
|
import org.apache.http.ConnectionClosedException;
|
||||||
|
import org.apache.http.HttpException;
|
||||||
|
import org.apache.http.impl.DefaultConnectionReuseStrategy;
|
||||||
|
import org.apache.http.impl.DefaultHttpResponseFactory;
|
||||||
|
import org.apache.http.impl.DefaultHttpServerConnection;
|
||||||
|
import org.apache.http.params.BasicHttpParams;
|
||||||
|
import org.apache.http.params.CoreConnectionPNames;
|
||||||
|
import org.apache.http.params.CoreProtocolPNames;
|
||||||
|
import org.apache.http.params.HttpParams;
|
||||||
|
import org.apache.http.protocol.BasicHttpContext;
|
||||||
|
import org.apache.http.protocol.BasicHttpProcessor;
|
||||||
|
import org.apache.http.protocol.HttpContext;
|
||||||
|
import org.apache.http.protocol.HttpRequestHandler;
|
||||||
|
import org.apache.http.protocol.HttpRequestHandlerRegistry;
|
||||||
|
import org.apache.http.protocol.HttpService;
|
||||||
|
import org.apache.http.protocol.ResponseConnControl;
|
||||||
|
import org.apache.http.protocol.ResponseContent;
|
||||||
|
import org.apache.http.protocol.ResponseDate;
|
||||||
|
import org.apache.http.protocol.ResponseServer;
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.utils.concurrency.NamedThreadFactory;
|
||||||
|
|
||||||
|
public class ClusterServiceServletContainer {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ClusterServiceServletContainer.class);
|
||||||
|
|
||||||
|
private ListenerThread listenerThread;
|
||||||
|
|
||||||
|
public ClusterServiceServletContainer() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean start(HttpRequestHandler requestHandler, int port) {
|
||||||
|
|
||||||
|
listenerThread = new ListenerThread(requestHandler, port);
|
||||||
|
listenerThread.start();
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("deprecation")
|
||||||
|
public void stop() {
|
||||||
|
if(listenerThread != null) {
|
||||||
|
listenerThread.interrupt();
|
||||||
|
listenerThread.stop();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
static class ListenerThread extends Thread {
|
||||||
|
private HttpService _httpService = null;
|
||||||
|
private ServerSocket _serverSocket = null;
|
||||||
|
private HttpParams _params = null;
|
||||||
|
private ExecutorService _executor;
|
||||||
|
|
||||||
|
public ListenerThread(HttpRequestHandler requestHandler, int port) {
|
||||||
|
_executor = Executors.newCachedThreadPool(new NamedThreadFactory("Cluster-Listener"));
|
||||||
|
|
||||||
|
try {
|
||||||
|
_serverSocket = new ServerSocket(port);
|
||||||
|
} catch (IOException ioex) {
|
||||||
|
s_logger.error("error initializing cluster service servlet container", ioex);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
_params = new BasicHttpParams();
|
||||||
|
_params
|
||||||
|
.setIntParameter(CoreConnectionPNames.SO_TIMEOUT, 5000)
|
||||||
|
.setIntParameter(CoreConnectionPNames.SOCKET_BUFFER_SIZE, 8 * 1024)
|
||||||
|
.setBooleanParameter(CoreConnectionPNames.STALE_CONNECTION_CHECK, false)
|
||||||
|
.setBooleanParameter(CoreConnectionPNames.TCP_NODELAY, true)
|
||||||
|
.setParameter(CoreProtocolPNames.ORIGIN_SERVER, "HttpComponents/1.1");
|
||||||
|
|
||||||
|
// Set up the HTTP protocol processor
|
||||||
|
BasicHttpProcessor httpproc = new BasicHttpProcessor();
|
||||||
|
httpproc.addInterceptor(new ResponseDate());
|
||||||
|
httpproc.addInterceptor(new ResponseServer());
|
||||||
|
httpproc.addInterceptor(new ResponseContent());
|
||||||
|
httpproc.addInterceptor(new ResponseConnControl());
|
||||||
|
|
||||||
|
// Set up request handlers
|
||||||
|
HttpRequestHandlerRegistry reqistry = new HttpRequestHandlerRegistry();
|
||||||
|
reqistry.register("/clusterservice", requestHandler);
|
||||||
|
|
||||||
|
// Set up the HTTP service
|
||||||
|
_httpService = new HttpService(httpproc, new DefaultConnectionReuseStrategy(), new DefaultHttpResponseFactory());
|
||||||
|
_httpService.setParams(_params);
|
||||||
|
_httpService.setHandlerResolver(reqistry);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void run() {
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Cluster service servlet container listening on port " + _serverSocket.getLocalPort());
|
||||||
|
|
||||||
|
while (!Thread.interrupted()) {
|
||||||
|
try {
|
||||||
|
// Set up HTTP connection
|
||||||
|
Socket socket = _serverSocket.accept();
|
||||||
|
final DefaultHttpServerConnection conn = new DefaultHttpServerConnection();
|
||||||
|
conn.bind(socket, _params);
|
||||||
|
|
||||||
|
_executor.execute(new Runnable() {
|
||||||
|
public void run() {
|
||||||
|
HttpContext context = new BasicHttpContext(null);
|
||||||
|
try {
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("dispatching cluster request from " + conn.getRemoteAddress().toString());
|
||||||
|
|
||||||
|
_httpService.handleRequest(conn, context);
|
||||||
|
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("Cluster request from " + conn.getRemoteAddress().toString() + " is processed");
|
||||||
|
|
||||||
|
} catch (ConnectionClosedException ex) {
|
||||||
|
s_logger.error("Client closed connection", ex);
|
||||||
|
} catch (IOException ex) {
|
||||||
|
s_logger.error("I/O error", ex);
|
||||||
|
} catch (HttpException ex) {
|
||||||
|
s_logger.error("Unrecoverable HTTP protocol violation", ex);
|
||||||
|
} finally {
|
||||||
|
try {
|
||||||
|
conn.shutdown();
|
||||||
|
conn.close();
|
||||||
|
} catch (IOException ignore) {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
} catch (InterruptedIOException ex) {
|
||||||
|
break;
|
||||||
|
} catch (IOException e) {
|
||||||
|
s_logger.error("Exception when initializing cluster service servlet container : ", e);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
_executor.shutdown();
|
||||||
|
if(s_logger.isInfoEnabled())
|
||||||
|
s_logger.info("Cluster service servlet container shutdown");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -0,0 +1,281 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import java.io.ByteArrayInputStream;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.net.URLDecoder;
|
||||||
|
|
||||||
|
import org.apache.commons.httpclient.HttpStatus;
|
||||||
|
import org.apache.http.HttpEntityEnclosingRequest;
|
||||||
|
import org.apache.http.HttpException;
|
||||||
|
import org.apache.http.HttpRequest;
|
||||||
|
import org.apache.http.HttpResponse;
|
||||||
|
import org.apache.http.entity.BasicHttpEntity;
|
||||||
|
import org.apache.http.protocol.HttpContext;
|
||||||
|
import org.apache.http.protocol.HttpRequestHandler;
|
||||||
|
import org.apache.http.util.EntityUtils;
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.agent.Listener;
|
||||||
|
import com.cloud.agent.api.Answer;
|
||||||
|
import com.cloud.agent.api.ChangeAgentAnswer;
|
||||||
|
import com.cloud.agent.api.ChangeAgentCommand;
|
||||||
|
import com.cloud.agent.api.Command;
|
||||||
|
import com.cloud.cluster.ClusterManager;
|
||||||
|
import com.cloud.cluster.RemoteMethodConstants;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.exception.OperationTimedoutException;
|
||||||
|
import com.cloud.serializer.GsonHelper;
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
|
||||||
|
public class ClusterServiceServletHttpHandler implements HttpRequestHandler {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ClusterServiceServletHttpHandler.class);
|
||||||
|
|
||||||
|
private final Gson gson;
|
||||||
|
private final ClusterManager manager;
|
||||||
|
|
||||||
|
public ClusterServiceServletHttpHandler(ClusterManager manager) {
|
||||||
|
this.manager = manager;
|
||||||
|
|
||||||
|
gson = GsonHelper.getBuilder().create();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void handle(HttpRequest request, HttpResponse response, HttpContext context)
|
||||||
|
throws HttpException, IOException {
|
||||||
|
|
||||||
|
try {
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("Start Handling cluster HTTP request");
|
||||||
|
|
||||||
|
parseRequest(request);
|
||||||
|
handleRequest(request, response);
|
||||||
|
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("Handle cluster HTTP request done");
|
||||||
|
|
||||||
|
} catch(Throwable e) {
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("Unexpected exception " + e.toString());
|
||||||
|
|
||||||
|
writeResponse(response, HttpStatus.SC_INTERNAL_SERVER_ERROR, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@SuppressWarnings("deprecation")
|
||||||
|
private void parseRequest(HttpRequest request) throws IOException {
|
||||||
|
if(request instanceof HttpEntityEnclosingRequest) {
|
||||||
|
HttpEntityEnclosingRequest entityRequest = (HttpEntityEnclosingRequest)request;
|
||||||
|
|
||||||
|
String body = EntityUtils.toString(entityRequest.getEntity());
|
||||||
|
if(body != null) {
|
||||||
|
String[] paramArray = body.split("&");
|
||||||
|
if(paramArray != null) {
|
||||||
|
for (String paramEntry : paramArray) {
|
||||||
|
String[] paramValue = paramEntry.split("=");
|
||||||
|
if (paramValue.length != 2)
|
||||||
|
continue;
|
||||||
|
|
||||||
|
String name = URLDecoder.decode(paramValue[0]);
|
||||||
|
String value = URLDecoder.decode(paramValue[1]);
|
||||||
|
|
||||||
|
if(s_logger.isTraceEnabled())
|
||||||
|
s_logger.trace("Parsed request parameter " + name + "=" + value);
|
||||||
|
request.getParams().setParameter(name, value);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void writeResponse(HttpResponse response, int statusCode, String content) {
|
||||||
|
if(content == null)
|
||||||
|
content = "";
|
||||||
|
response.setStatusCode(statusCode);
|
||||||
|
BasicHttpEntity body = new BasicHttpEntity();
|
||||||
|
body.setContentType("text/html; charset=UTF-8");
|
||||||
|
|
||||||
|
byte[] bodyData = content.getBytes();
|
||||||
|
body.setContent(new ByteArrayInputStream(bodyData));
|
||||||
|
body.setContentLength(bodyData.length);
|
||||||
|
response.setEntity(body);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void handleRequest(HttpRequest req, HttpResponse response) {
|
||||||
|
String method = (String)req.getParams().getParameter("method");
|
||||||
|
|
||||||
|
int nMethod = RemoteMethodConstants.METHOD_UNKNOWN;
|
||||||
|
String responseContent = null;
|
||||||
|
try {
|
||||||
|
if(method != null)
|
||||||
|
nMethod = Integer.parseInt(method);
|
||||||
|
|
||||||
|
switch(nMethod) {
|
||||||
|
case RemoteMethodConstants.METHOD_EXECUTE :
|
||||||
|
responseContent = handleExecuteMethodCall(req);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case RemoteMethodConstants.METHOD_EXECUTE_ASYNC :
|
||||||
|
responseContent = handleExecuteAsyncMethodCall(req);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case RemoteMethodConstants.METHOD_ASYNC_RESULT :
|
||||||
|
responseContent = handleAsyncResultMethodCall(req);
|
||||||
|
break;
|
||||||
|
|
||||||
|
case RemoteMethodConstants.METHOD_UNKNOWN :
|
||||||
|
default :
|
||||||
|
assert(false);
|
||||||
|
s_logger.error("unrecognized method " + nMethod);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
} catch(Throwable e) {
|
||||||
|
s_logger.error("Unexpected exception when processing cluster service request : ", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
if(responseContent != null) {
|
||||||
|
writeResponse(response, HttpStatus.SC_OK, responseContent);
|
||||||
|
} else {
|
||||||
|
writeResponse(response, HttpStatus.SC_BAD_REQUEST, null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private String handleExecuteMethodCall(HttpRequest req) {
|
||||||
|
String agentId = (String)req.getParams().getParameter("agentId");
|
||||||
|
String gsonPackage = (String)req.getParams().getParameter("gsonPackage");
|
||||||
|
String stopOnError = (String)req.getParams().getParameter("stopOnError");
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("|->" + agentId + " " + gsonPackage);
|
||||||
|
|
||||||
|
Command [] cmds = null;
|
||||||
|
try {
|
||||||
|
cmds = gson.fromJson(gsonPackage, Command[].class);
|
||||||
|
} catch(Throwable e) {
|
||||||
|
assert(false);
|
||||||
|
s_logger.error("Excection in gson decoding : ", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (cmds.length == 1 && cmds[0] instanceof ChangeAgentCommand) { //intercepted
|
||||||
|
ChangeAgentCommand cmd = (ChangeAgentCommand)cmds[0];
|
||||||
|
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Intercepting command for agent change: agent " + cmd.getAgentId() + " event: " + cmd.getEvent());
|
||||||
|
}
|
||||||
|
boolean result = false;
|
||||||
|
try {
|
||||||
|
result = manager.executeAgentUserRequest(cmd.getAgentId(), cmd.getEvent());
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Result is " + result);
|
||||||
|
}
|
||||||
|
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
s_logger.warn("Agent is unavailable", e);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
Answer[] answers = new Answer[1];
|
||||||
|
answers[0] = new ChangeAgentAnswer(cmd, result);
|
||||||
|
return gson.toJson(answers);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
long startTick = System.currentTimeMillis();
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Send |-> " + agentId + " " + gsonPackage + " to agent manager");
|
||||||
|
|
||||||
|
Answer[] answers = manager.sendToAgent(Long.parseLong(agentId), cmds,
|
||||||
|
Integer.parseInt(stopOnError) != 0 ? true : false);
|
||||||
|
|
||||||
|
if(answers != null) {
|
||||||
|
String jsonReturn = gson.toJson(answers);
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Completed |-> " + agentId + " " + gsonPackage +
|
||||||
|
" in " + (System.currentTimeMillis() - startTick) + " ms, return result: " + jsonReturn);
|
||||||
|
|
||||||
|
return jsonReturn;
|
||||||
|
} else {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Completed |-> " + agentId + " " + gsonPackage +
|
||||||
|
" in " + (System.currentTimeMillis() - startTick) + " ms, return null result");
|
||||||
|
}
|
||||||
|
} catch(AgentUnavailableException e) {
|
||||||
|
s_logger.warn("Agent is unavailable", e);
|
||||||
|
} catch (OperationTimedoutException e) {
|
||||||
|
s_logger.warn("Timed Out", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String handleExecuteAsyncMethodCall(HttpRequest req) {
|
||||||
|
String agentId = (String)req.getParams().getParameter("agentId");
|
||||||
|
String gsonPackage = (String)req.getParams().getParameter("gsonPackage");
|
||||||
|
String stopOnError = (String)req.getParams().getParameter("stopOnError");
|
||||||
|
String callingPeer = (String)req.getParams().getParameter("caller");
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Async " + callingPeer + " |-> " + agentId + " " + gsonPackage);
|
||||||
|
|
||||||
|
Command [] cmds = null;
|
||||||
|
try {
|
||||||
|
cmds = gson.fromJson(gsonPackage, Command[].class);
|
||||||
|
} catch(Throwable e) {
|
||||||
|
assert(false);
|
||||||
|
s_logger.error("Excection in gson decoding : ", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
Listener listener = new ClusterAsyncExectuionListener(manager, callingPeer);
|
||||||
|
long seq = -1;
|
||||||
|
try {
|
||||||
|
long startTick = System.currentTimeMillis();
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Send Async " + callingPeer + " |-> " + agentId + " " + gsonPackage + " to agent manager");
|
||||||
|
|
||||||
|
seq = manager.sendToAgent(Long.parseLong(agentId), cmds,
|
||||||
|
Integer.parseInt(stopOnError) != 0 ? true : false, listener);
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Complated Async " + callingPeer + " |-> " + agentId + " " + gsonPackage + " in " +
|
||||||
|
+ (System.currentTimeMillis() - startTick) + " ms, returned seq: " + seq);
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
s_logger.warn("Agent is unavailable", e);
|
||||||
|
seq = -1;
|
||||||
|
}
|
||||||
|
|
||||||
|
return gson.toJson(seq);
|
||||||
|
}
|
||||||
|
|
||||||
|
private String handleAsyncResultMethodCall(HttpRequest req) {
|
||||||
|
String agentId = (String)req.getParams().getParameter("agentId");
|
||||||
|
String gsonPackage = (String)req.getParams().getParameter("gsonPackage");
|
||||||
|
String seq = (String)req.getParams().getParameter("seq");
|
||||||
|
String executingPeer = (String)req.getParams().getParameter("executingPeer");
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Async callback " + executingPeer + "." + agentId + " |-> " + gsonPackage);
|
||||||
|
|
||||||
|
Answer[] answers = null;
|
||||||
|
try {
|
||||||
|
answers = gson.fromJson(gsonPackage, Answer[].class);
|
||||||
|
} catch(Throwable e) {
|
||||||
|
assert(false);
|
||||||
|
s_logger.error("Excection in gson decoding : ", e);
|
||||||
|
}
|
||||||
|
|
||||||
|
long startTick = System.currentTimeMillis();
|
||||||
|
if(manager.onAsyncResult(executingPeer, Long.parseLong(agentId), Long.parseLong(seq), answers)) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Completed local callback in " + (System.currentTimeMillis() - startTick) +
|
||||||
|
" ms, return recurring=true, let async listener contine on");
|
||||||
|
|
||||||
|
return "recurring=true";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Completed local callback in " + (System.currentTimeMillis() - startTick) +
|
||||||
|
" ms, return recurring=false, indicate to tear down async listener");
|
||||||
|
|
||||||
|
return "recurring=false";
|
||||||
|
}
|
||||||
|
}
|
||||||
143
server/src/com/cloud/cluster/ClusterServiceServletImpl.java
Normal file
143
server/src/com/cloud/cluster/ClusterServiceServletImpl.java
Normal file
@ -0,0 +1,143 @@
|
|||||||
|
package com.cloud.cluster;
|
||||||
|
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.rmi.RemoteException;
|
||||||
|
|
||||||
|
import org.apache.commons.httpclient.HttpClient;
|
||||||
|
import org.apache.commons.httpclient.HttpException;
|
||||||
|
import org.apache.commons.httpclient.HttpStatus;
|
||||||
|
import org.apache.commons.httpclient.methods.PostMethod;
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.cluster.ClusterService;
|
||||||
|
import com.cloud.cluster.RemoteMethodConstants;
|
||||||
|
import com.cloud.serializer.GsonHelper;
|
||||||
|
import com.google.gson.Gson;
|
||||||
|
|
||||||
|
public class ClusterServiceServletImpl implements ClusterService {
|
||||||
|
private static final long serialVersionUID = 4574025200012566153L;
|
||||||
|
|
||||||
|
private static final Logger s_logger = Logger.getLogger(ClusterServiceServletImpl.class);
|
||||||
|
|
||||||
|
private String serviceUrl;
|
||||||
|
|
||||||
|
private Gson gson;
|
||||||
|
|
||||||
|
public ClusterServiceServletImpl() {
|
||||||
|
gson = GsonHelper.getBuilder().create();
|
||||||
|
}
|
||||||
|
|
||||||
|
public ClusterServiceServletImpl(String serviceUrl) {
|
||||||
|
this.serviceUrl = serviceUrl;
|
||||||
|
|
||||||
|
gson = GsonHelper.getBuilder().create();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String execute(String callingPeer, long agentId, String gsonPackage, boolean stopOnError) throws RemoteException {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Post (sync-call) " + gsonPackage + " to " + serviceUrl + " for agent " + agentId + " from " + callingPeer);
|
||||||
|
|
||||||
|
HttpClient client = new HttpClient();
|
||||||
|
PostMethod method = new PostMethod(serviceUrl);
|
||||||
|
|
||||||
|
method.addParameter("method", Integer.toString(RemoteMethodConstants.METHOD_EXECUTE));
|
||||||
|
method.addParameter("agentId", Long.toString(agentId));
|
||||||
|
method.addParameter("gsonPackage", gsonPackage);
|
||||||
|
method.addParameter("stopOnError", stopOnError ? "1" : "0");
|
||||||
|
|
||||||
|
return executePostMethod(client, method);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long executeAsync(String callingPeer, long agentId, String gsonPackage, boolean stopOnError) throws RemoteException {
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Post (Async-call) " + gsonPackage + " to " + serviceUrl + " for agent " + agentId + " from " + callingPeer);
|
||||||
|
|
||||||
|
HttpClient client = new HttpClient();
|
||||||
|
PostMethod method = new PostMethod(serviceUrl);
|
||||||
|
|
||||||
|
method.addParameter("method", Integer.toString(RemoteMethodConstants.METHOD_EXECUTE_ASYNC));
|
||||||
|
method.addParameter("agentId", Long.toString(agentId));
|
||||||
|
method.addParameter("gsonPackage", gsonPackage);
|
||||||
|
method.addParameter("stopOnError", stopOnError ? "1" : "0");
|
||||||
|
method.addParameter("caller", callingPeer);
|
||||||
|
|
||||||
|
String result = executePostMethod(client, method);
|
||||||
|
if(result == null) {
|
||||||
|
s_logger.error("Empty return from remote async-execution on " + serviceUrl);
|
||||||
|
throw new RemoteException("Invalid result returned from async-execution on peer : " + serviceUrl);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
return gson.fromJson(result, Long.class);
|
||||||
|
} catch(Throwable e) {
|
||||||
|
s_logger.error("Unable to parse executeAsync return : " + result);
|
||||||
|
throw new RemoteException("Invalid result returned from async-execution on peer : " + serviceUrl);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public boolean onAsyncResult(String executingPeer, long agentId, long seq, String gsonPackage) throws RemoteException {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Forward Async-call answer to remote listener, agent: " + agentId
|
||||||
|
+ ", excutingPeer: " + executingPeer
|
||||||
|
+ ", seq: " + seq + ", gsonPackage: " + gsonPackage);
|
||||||
|
|
||||||
|
HttpClient client = new HttpClient();
|
||||||
|
PostMethod method = new PostMethod(serviceUrl);
|
||||||
|
|
||||||
|
method.addParameter("method", Integer.toString(RemoteMethodConstants.METHOD_ASYNC_RESULT));
|
||||||
|
method.addParameter("agentId", Long.toString(agentId));
|
||||||
|
method.addParameter("gsonPackage", gsonPackage);
|
||||||
|
method.addParameter("seq", Long.toString(seq));
|
||||||
|
method.addParameter("executingPeer", executingPeer);
|
||||||
|
|
||||||
|
String result = executePostMethod(client, method);
|
||||||
|
if(result.contains("recurring=true")) {
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Remote listener returned recurring=true");
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("Remote listener returned recurring=false");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String executePostMethod(HttpClient client, PostMethod method) {
|
||||||
|
int response = 0;
|
||||||
|
String result = null;
|
||||||
|
try {
|
||||||
|
long startTick = System.currentTimeMillis();
|
||||||
|
response = client.executeMethod(method);
|
||||||
|
if(response == HttpStatus.SC_OK) {
|
||||||
|
result = method.getResponseBodyAsString();
|
||||||
|
if(s_logger.isDebugEnabled())
|
||||||
|
s_logger.debug("POST " + serviceUrl + " response :" + result + ", responding time: "
|
||||||
|
+ (System.currentTimeMillis() - startTick) + " ms");
|
||||||
|
} else {
|
||||||
|
s_logger.error("Invalid response code : " + response + ", from : "
|
||||||
|
+ serviceUrl + ", method : " + method.getParameter("method")
|
||||||
|
+ " responding time: " + (System.currentTimeMillis() - startTick));
|
||||||
|
}
|
||||||
|
} catch (HttpException e) {
|
||||||
|
s_logger.error("HttpException from : " + serviceUrl + ", method : " + method.getParameter("method"));
|
||||||
|
} catch (IOException e) {
|
||||||
|
s_logger.error("IOException from : " + serviceUrl + ", method : " + method.getParameter("method"));
|
||||||
|
} catch(Throwable e) {
|
||||||
|
s_logger.error("Exception from : " + serviceUrl + ", method : " + method.getParameter("method") + ", exception :", e);
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
// for test purpose only
|
||||||
|
public static void main(String[] args) {
|
||||||
|
ClusterServiceServletImpl service = new ClusterServiceServletImpl("http://localhost:9090/clusterservice");
|
||||||
|
try {
|
||||||
|
String result = service.execute("test", 1, "{ p1:v1, p2:v2 }", true);
|
||||||
|
System.out.println(result);
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
104
server/src/com/cloud/ha/KVMFencer.java
Normal file
104
server/src/com/cloud/ha/KVMFencer.java
Normal file
@ -0,0 +1,104 @@
|
|||||||
|
package com.cloud.ha;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.agent.AgentManager;
|
||||||
|
import com.cloud.agent.api.FenceAnswer;
|
||||||
|
import com.cloud.agent.api.FenceCommand;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.exception.OperationTimedoutException;
|
||||||
|
import com.cloud.host.HostVO;
|
||||||
|
import com.cloud.host.Status;
|
||||||
|
import com.cloud.host.dao.HostDao;
|
||||||
|
import com.cloud.hypervisor.Hypervisor.HypervisorType;
|
||||||
|
import com.cloud.utils.component.Inject;
|
||||||
|
import com.cloud.vm.VMInstanceVO;
|
||||||
|
|
||||||
|
@Local(value=FenceBuilder.class)
|
||||||
|
public class KVMFencer implements FenceBuilder {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(KVMFencer.class);
|
||||||
|
String _name;
|
||||||
|
|
||||||
|
@Inject HostDao _hostDao;
|
||||||
|
@Inject AgentManager _agentMgr;
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params)
|
||||||
|
throws ConfigurationException {
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
_name = name;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return _name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean start() {
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
// TODO Auto-generated method stub
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
public KVMFencer() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean fenceOff(VMInstanceVO vm, HostVO host) {
|
||||||
|
if (host.getHypervisorType() != HypervisorType.KVM) {
|
||||||
|
s_logger.debug("Don't know how to fence non kvm hosts " + host.getHypervisorType());
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
List<HostVO> hosts = _hostDao.listByCluster(host.getClusterId());
|
||||||
|
FenceCommand fence = new FenceCommand(vm, host);
|
||||||
|
|
||||||
|
for (HostVO h : hosts) {
|
||||||
|
if (h.getHypervisorType() == HypervisorType.KVM) {
|
||||||
|
if( h.getStatus() != Status.Up ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if( h.getId() == host.getId() ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
FenceAnswer answer;
|
||||||
|
try {
|
||||||
|
answer = (FenceAnswer)_agentMgr.send(h.getId(), fence);
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Moving on to the next host because " + h.toString() + " is unavailable");
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
} catch (OperationTimedoutException e) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Moving on to the next host because " + h.toString() + " is unavailable");
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (answer != null && answer.getResult()) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Unable to fence off " + vm.toString() + " on " + host.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
71
server/src/com/cloud/ha/RecreatableFencer.java
Normal file
71
server/src/com/cloud/ha/RecreatableFencer.java
Normal file
@ -0,0 +1,71 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (C) 2010 Cloud.com, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under the GNU General Public License v3 or later.
|
||||||
|
*
|
||||||
|
* It is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or any later version.
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package com.cloud.ha;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.host.HostVO;
|
||||||
|
import com.cloud.storage.VolumeVO;
|
||||||
|
import com.cloud.storage.dao.StoragePoolDao;
|
||||||
|
import com.cloud.storage.dao.VolumeDao;
|
||||||
|
import com.cloud.utils.component.AdapterBase;
|
||||||
|
import com.cloud.utils.component.Inject;
|
||||||
|
import com.cloud.vm.VMInstanceVO;
|
||||||
|
import com.cloud.vm.VirtualMachine;
|
||||||
|
|
||||||
|
@Local(value=FenceBuilder.class)
|
||||||
|
public class RecreatableFencer extends AdapterBase implements FenceBuilder {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(RecreatableFencer.class);
|
||||||
|
@Inject VolumeDao _volsDao;
|
||||||
|
@Inject StoragePoolDao _poolDao;
|
||||||
|
|
||||||
|
protected RecreatableFencer() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean fenceOff(VMInstanceVO vm, HostVO host) {
|
||||||
|
VirtualMachine.Type type = vm.getType();
|
||||||
|
if (type != VirtualMachine.Type.ConsoleProxy && type != VirtualMachine.Type.DomainRouter && type != VirtualMachine.Type.SecondaryStorageVm) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Don't know how to fence off " + type);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
List<VolumeVO> vols = _volsDao.findByInstance(vm.getId());
|
||||||
|
for (VolumeVO vol : vols) {
|
||||||
|
if (!vol.isRecreatable()) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Unable to fence off volumes that are not recreatable: " + vol);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
if (vol.getPoolType().isShared()) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Unable to fence off volumes that are shared: " + vol);
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
118
server/src/com/cloud/ha/XenServerFencer.java
Normal file
118
server/src/com/cloud/ha/XenServerFencer.java
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (C) 2010 Cloud.com, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under the GNU General Public License v3 or later.
|
||||||
|
*
|
||||||
|
* It is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or any later version.
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package com.cloud.ha;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
|
||||||
|
import com.cloud.agent.AgentManager;
|
||||||
|
import com.cloud.agent.api.FenceAnswer;
|
||||||
|
import com.cloud.agent.api.FenceCommand;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.exception.OperationTimedoutException;
|
||||||
|
import com.cloud.host.HostVO;
|
||||||
|
import com.cloud.host.Status;
|
||||||
|
import com.cloud.host.dao.HostDao;
|
||||||
|
import com.cloud.hypervisor.Hypervisor.HypervisorType;
|
||||||
|
import com.cloud.utils.component.Inject;
|
||||||
|
import com.cloud.vm.VMInstanceVO;
|
||||||
|
|
||||||
|
@Local(value=FenceBuilder.class)
|
||||||
|
public class XenServerFencer implements FenceBuilder {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(XenServerFencer.class);
|
||||||
|
String _name;
|
||||||
|
|
||||||
|
@Inject HostDao _hostDao;
|
||||||
|
@Inject AgentManager _agentMgr;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Boolean fenceOff(VMInstanceVO vm, HostVO host) {
|
||||||
|
if (host.getHypervisorType() != HypervisorType.XenServer) {
|
||||||
|
s_logger.debug("Don't know how to fence non XenServer hosts " + host.getHypervisorType());
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
List<HostVO> hosts = _hostDao.listByCluster(host.getClusterId());
|
||||||
|
FenceCommand fence = new FenceCommand(vm, host);
|
||||||
|
|
||||||
|
for (HostVO h : hosts) {
|
||||||
|
if (h.getHypervisorType() == HypervisorType.XenServer) {
|
||||||
|
if( h.getStatus() != Status.Up ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if( h.getId() == host.getId() ) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
FenceAnswer answer;
|
||||||
|
try {
|
||||||
|
answer = (FenceAnswer)_agentMgr.send(h.getId(), fence);
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Moving on to the next host because " + h.toString() + " is unavailable");
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
} catch (OperationTimedoutException e) {
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Moving on to the next host because " + h.toString() + " is unavailable");
|
||||||
|
}
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
if (answer != null && answer.getResult()) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Unable to fence off " + vm.toString() + " on " + host.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
public XenServerFencer() {
|
||||||
|
super();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> params) throws ConfigurationException {
|
||||||
|
_name = name;
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName() {
|
||||||
|
return _name;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean start() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean stop() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,276 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (C) 2010 Cloud.com, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under the GNU General Public License v3 or later.
|
||||||
|
*
|
||||||
|
* It is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or any later version.
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package com.cloud.hypervisor.xen.discoverer;
|
||||||
|
|
||||||
|
|
||||||
|
import java.util.HashSet;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
|
||||||
|
import org.apache.log4j.Logger;
|
||||||
|
import org.apache.xmlrpc.XmlRpcException;
|
||||||
|
|
||||||
|
import com.cloud.agent.api.SetupAnswer;
|
||||||
|
import com.cloud.agent.api.SetupCommand;
|
||||||
|
import com.cloud.agent.api.StartupCommand;
|
||||||
|
import com.cloud.agent.api.StartupRoutingCommand;
|
||||||
|
import com.cloud.alert.AlertManager;
|
||||||
|
import com.cloud.configuration.Config;
|
||||||
|
import com.cloud.exception.AgentUnavailableException;
|
||||||
|
import com.cloud.exception.ConnectionException;
|
||||||
|
import com.cloud.exception.OperationTimedoutException;
|
||||||
|
import com.cloud.host.HostEnvironment;
|
||||||
|
import com.cloud.host.HostVO;
|
||||||
|
import com.cloud.hypervisor.Hypervisor.HypervisorType;
|
||||||
|
import com.cloud.hypervisor.xen.resource.CitrixResourceBase;
|
||||||
|
import com.cloud.hypervisor.xen.resource.XenServer56FP1PremiumResource;
|
||||||
|
import com.cloud.hypervisor.xen.resource.XenServer56Resource;
|
||||||
|
import com.cloud.maint.Version;
|
||||||
|
import com.cloud.resource.Discoverer;
|
||||||
|
import com.cloud.utils.Pair;
|
||||||
|
import com.cloud.utils.Ternary;
|
||||||
|
import com.xensource.xenapi.Connection;
|
||||||
|
import com.xensource.xenapi.Host;
|
||||||
|
import com.xensource.xenapi.HostPatch;
|
||||||
|
import com.xensource.xenapi.PoolPatch;
|
||||||
|
import com.xensource.xenapi.Types.XenAPIException;
|
||||||
|
|
||||||
|
@Local(value=Discoverer.class)
|
||||||
|
public class XenServerDiscoverer extends XcpServerDiscoverer {
|
||||||
|
private static final Logger s_logger = Logger.getLogger(XenServerDiscoverer.class);
|
||||||
|
private String _minProductVersion;
|
||||||
|
private String _minXapiVersion;
|
||||||
|
private String _minXenVersion;
|
||||||
|
private String _maxProductVersion;
|
||||||
|
private String _maxXapiVersion;
|
||||||
|
private String _maxXenVersion;
|
||||||
|
private List<Pair<String, String>> _requiredPatches;
|
||||||
|
|
||||||
|
private boolean _setupMultipath;
|
||||||
|
|
||||||
|
protected XenServerDiscoverer() {
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected CitrixResourceBase createServerResource(long dcId, Long podId, Host.Record record) {
|
||||||
|
String prodBrand = record.softwareVersion.get("product_brand").trim();
|
||||||
|
String prodVersion = record.softwareVersion.get("product_version").trim();
|
||||||
|
|
||||||
|
if(prodBrand.equals("XenServer")){
|
||||||
|
if(prodVersion.equals("5.6.0")) {
|
||||||
|
return new XenServer56Resource();
|
||||||
|
} else if(prodVersion.equals("5.6.100")) {
|
||||||
|
return new XenServer56FP1PremiumResource();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String msg = "Only support XenServer 5.6 and XenServer 5.6 FP1, but this one is " + prodBrand + " " + prodVersion;
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
s_logger.debug(msg);
|
||||||
|
throw new RuntimeException(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
protected boolean checkServer(Connection conn, long dcId, Long podId, Host host, Host.Record record) {
|
||||||
|
String prodVersion = record.softwareVersion.get("product_version");
|
||||||
|
String xapiVersion = record.softwareVersion.get("xapi");
|
||||||
|
String xenVersion = record.softwareVersion.get("xen");
|
||||||
|
|
||||||
|
String prodBrand = record.softwareVersion.get("product_brand");
|
||||||
|
|
||||||
|
if(!prodBrand.equals("XenServer")) {
|
||||||
|
String msg = "Do not support product brand " + prodBrand;
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
s_logger.debug(msg);
|
||||||
|
throw new RuntimeException(msg);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Version.compare(_minProductVersion, prodVersion) > 0) {
|
||||||
|
String msg = "Unable to add host " + record.address + " because the product version " + prodVersion + " is lower than the minimum " + _minProductVersion;
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
s_logger.debug(msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_maxProductVersion != null && Version.compare(prodVersion, _maxProductVersion) > 0) {
|
||||||
|
String msg = "Unable to add host " + record.address + " because the product version " + prodVersion + " is higher than the maximum " + _maxProductVersion;
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
s_logger.debug(msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Version.compare(_minXenVersion, xenVersion) > 0) {
|
||||||
|
String msg = "Unable to add host " + record.address + " because the xen version " + xenVersion + " is lower than the minimum " + _minXenVersion;
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
s_logger.debug(msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_maxXenVersion != null && Version.compare(xenVersion, _maxXenVersion) > 0) {
|
||||||
|
String msg = "Unable to add host " + record.address + " because the xen version " + xenVersion + " is higher than the maximum " + _maxXenVersion;
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
s_logger.debug(msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (Version.compare(_minXapiVersion, xapiVersion) > 0) {
|
||||||
|
String msg = "Unable to add host " + record.address + " because the xapi version " + xapiVersion + " is lower than the minimum " + _minXapiVersion;
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
s_logger.debug(msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_maxXapiVersion != null && Version.compare(xapiVersion, _maxXapiVersion) > 0) {
|
||||||
|
String msg = "Unable to add host " + record.address + " because the xapi version " + xapiVersion + " is higher than the maximum " + _maxXapiVersion;
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
s_logger.debug(msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
if(Version.compare(prodVersion, _minProductVersion) >= 0)
|
||||||
|
return true;
|
||||||
|
|
||||||
|
|
||||||
|
Set<Ternary<String, String, Boolean>> required = new HashSet<Ternary<String, String, Boolean>>(_requiredPatches.size());
|
||||||
|
for (Pair<String, String> req : _requiredPatches) {
|
||||||
|
required.add(new Ternary<String, String, Boolean>(req.first(), req.second(), false));
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
|
Set<HostPatch> patches = host.getPatches(conn);
|
||||||
|
if (patches != null) {
|
||||||
|
for (HostPatch patch : patches) {
|
||||||
|
HostPatch.Record hpr = patch.getRecord(conn);
|
||||||
|
PoolPatch.Record ppr = hpr.poolPatch.getRecord(conn);
|
||||||
|
|
||||||
|
for (Ternary<String, String, Boolean> req: required) {
|
||||||
|
if (hpr.nameLabel != null && hpr.nameLabel.contains(req.first()) &&
|
||||||
|
hpr.version != null && hpr.version.contains(req.second())) {
|
||||||
|
req.third(true);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (ppr.nameLabel != null && ppr.nameLabel.contains(req.first()) &&
|
||||||
|
ppr.version != null && ppr.version.contains(req.second())) {
|
||||||
|
req.third(true);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (Ternary<String, String, Boolean> req : required) {
|
||||||
|
if (!req.third()) {
|
||||||
|
String msg = "Unable to add host " + record.address + " because unable to find the following patch: " + req.first() + " version " + req.second();
|
||||||
|
s_logger.warn(msg);
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, msg, msg);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (XenAPIException e) {
|
||||||
|
s_logger.warn("Unable to add " + record.address, e);
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, "Unable to add " + record.address , "Error is " + e.getMessage());
|
||||||
|
return false;
|
||||||
|
} catch (XmlRpcException e) {
|
||||||
|
s_logger.warn("Unable to add " + record.address, e);
|
||||||
|
_alertMgr.sendAlert(AlertManager.ALERT_TYPE_HOST, dcId, podId, "Unable to add " + record.address, "Error is " + e.getMessage());
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void serverConfig() {
|
||||||
|
_minXenVersion = _params.get(Config.XenMinVersion.key());
|
||||||
|
if (_minXenVersion == null) {
|
||||||
|
_minXenVersion = "3.3.1";
|
||||||
|
}
|
||||||
|
|
||||||
|
_minProductVersion = _params.get(Config.XenProductMinVersion.key());
|
||||||
|
if (_minProductVersion == null) {
|
||||||
|
_minProductVersion = "5.5.0";
|
||||||
|
}
|
||||||
|
|
||||||
|
_minXapiVersion = _params.get(Config.XenXapiMinVersion.key());
|
||||||
|
if (_minXapiVersion == null) {
|
||||||
|
_minXapiVersion = "1.3";
|
||||||
|
}
|
||||||
|
|
||||||
|
_maxXenVersion = _params.get(Config.XenMaxVersion.key());
|
||||||
|
_maxProductVersion = _params.get(Config.XenProductMaxVersion.key());
|
||||||
|
_maxXapiVersion = _params.get(Config.XenXapiMaxVersion.key());
|
||||||
|
|
||||||
|
String value = _params.get(Config.XenSetupMultipath.key());
|
||||||
|
_setupMultipath = Boolean.parseBoolean(value);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void processConnect(HostVO agent, StartupCommand cmd) throws ConnectionException {
|
||||||
|
super.processConnect(agent, cmd);
|
||||||
|
|
||||||
|
if (!(cmd instanceof StartupRoutingCommand )) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
long agentId = agent.getId();
|
||||||
|
|
||||||
|
StartupRoutingCommand startup = (StartupRoutingCommand)cmd;
|
||||||
|
if (startup.getHypervisorType() != HypervisorType.XenServer) {
|
||||||
|
s_logger.debug("Not XenServer so moving on.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
HostVO host = _hostDao.findById(agentId);
|
||||||
|
if (host.isSetup()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (s_logger.isDebugEnabled()) {
|
||||||
|
s_logger.debug("Setting up host " + agentId);
|
||||||
|
}
|
||||||
|
HostEnvironment env = new HostEnvironment();
|
||||||
|
|
||||||
|
SetupCommand setup = new SetupCommand(env);
|
||||||
|
if (_setupMultipath) {
|
||||||
|
setup.setMultipathOn();
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
SetupAnswer answer = (SetupAnswer)_agentMgr.send(agentId, setup);
|
||||||
|
if (answer != null && answer.getResult()) {
|
||||||
|
host.setSetup(true);
|
||||||
|
host.setLastPinged((System.currentTimeMillis()>>10) - 5 * 60 );
|
||||||
|
_hostDao.update(host.getId(), host);
|
||||||
|
if ( answer.needReconnect() ) {
|
||||||
|
throw new ConnectionException(false, "Reinitialize agent after setup.");
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
} else {
|
||||||
|
s_logger.warn("Unable to setup agent " + agentId + " due to " + ((answer != null)?answer.getDetails():"return null"));
|
||||||
|
}
|
||||||
|
} catch (AgentUnavailableException e) {
|
||||||
|
s_logger.warn("Unable to setup agent " + agentId + " because it became unavailable.", e);
|
||||||
|
} catch (OperationTimedoutException e) {
|
||||||
|
s_logger.warn("Unable to setup agent " + agentId + " because it timed out", e);
|
||||||
|
}
|
||||||
|
throw new ConnectionException(true, "Reinitialize agent after setup.");
|
||||||
|
}
|
||||||
|
}
|
||||||
209
server/src/com/cloud/network/guru/ExternalGuestNetworkGuru.java
Normal file
209
server/src/com/cloud/network/guru/ExternalGuestNetworkGuru.java
Normal file
@ -0,0 +1,209 @@
|
|||||||
|
package com.cloud.network.guru;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
|
||||||
|
import com.cloud.configuration.Config;
|
||||||
|
import com.cloud.configuration.dao.ConfigurationDao;
|
||||||
|
import com.cloud.dc.DataCenter;
|
||||||
|
import com.cloud.dc.dao.DataCenterDao;
|
||||||
|
import com.cloud.deploy.DeployDestination;
|
||||||
|
import com.cloud.deploy.DeploymentPlan;
|
||||||
|
import com.cloud.exception.InsufficientAddressCapacityException;
|
||||||
|
import com.cloud.exception.InsufficientVirtualNetworkCapcityException;
|
||||||
|
import com.cloud.network.Network;
|
||||||
|
import com.cloud.network.NetworkManager;
|
||||||
|
import com.cloud.network.Network.State;
|
||||||
|
import com.cloud.network.NetworkVO;
|
||||||
|
import com.cloud.network.Networks.BroadcastDomainType;
|
||||||
|
import com.cloud.network.dao.NetworkDao;
|
||||||
|
import com.cloud.network.ovs.OvsNetworkManager;
|
||||||
|
import com.cloud.network.ovs.OvsTunnelManager;
|
||||||
|
import com.cloud.offering.NetworkOffering;
|
||||||
|
import com.cloud.user.Account;
|
||||||
|
import com.cloud.utils.component.Inject;
|
||||||
|
import com.cloud.utils.exception.CloudRuntimeException;
|
||||||
|
import com.cloud.utils.net.NetUtils;
|
||||||
|
import com.cloud.vm.Nic.ReservationStrategy;
|
||||||
|
import com.cloud.vm.NicProfile;
|
||||||
|
import com.cloud.vm.ReservationContext;
|
||||||
|
import com.cloud.vm.VirtualMachine;
|
||||||
|
import com.cloud.vm.VirtualMachineProfile;
|
||||||
|
|
||||||
|
@Local(value=NetworkGuru.class)
|
||||||
|
public class ExternalGuestNetworkGuru extends GuestNetworkGuru {
|
||||||
|
|
||||||
|
@Inject NetworkManager _networkMgr;
|
||||||
|
@Inject NetworkDao _networkDao;
|
||||||
|
@Inject DataCenterDao _zoneDao;
|
||||||
|
@Inject ConfigurationDao _configDao;
|
||||||
|
@Inject OvsNetworkManager _ovsNetworkMgr;
|
||||||
|
@Inject OvsTunnelManager _tunnelMgr;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Network design(NetworkOffering offering, DeploymentPlan plan, Network userSpecified, Account owner) {
|
||||||
|
|
||||||
|
if (_ovsNetworkMgr.isOvsNetworkEnabled() || _tunnelMgr.isOvsTunnelEnabled()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkVO config = (NetworkVO) super.design(offering, plan, userSpecified, owner);
|
||||||
|
if (config == null) {
|
||||||
|
return null;
|
||||||
|
} else if (_networkMgr.zoneIsConfiguredForExternalNetworking(plan.getDataCenterId())) {
|
||||||
|
config.setState(State.Allocated);
|
||||||
|
}
|
||||||
|
|
||||||
|
return config;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Network implement(Network config, NetworkOffering offering, DeployDestination dest, ReservationContext context) {
|
||||||
|
assert (config.getState() == State.Implementing) : "Why are we implementing " + config;
|
||||||
|
|
||||||
|
if (_ovsNetworkMgr.isOvsNetworkEnabled() || _tunnelMgr.isOvsTunnelEnabled()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!_networkMgr.zoneIsConfiguredForExternalNetworking(config.getDataCenterId())) {
|
||||||
|
return super.implement(config, offering, dest, context);
|
||||||
|
}
|
||||||
|
|
||||||
|
DataCenter zone = dest.getDataCenter();
|
||||||
|
NetworkVO implemented = new NetworkVO(config.getTrafficType(), config.getGuestType(), config.getMode(), config.getBroadcastDomainType(), config.getNetworkOfferingId(), config.getDataCenterId(), State.Allocated);
|
||||||
|
|
||||||
|
// Get a vlan tag
|
||||||
|
int vlanTag;
|
||||||
|
if (config.getBroadcastUri() == null) {
|
||||||
|
String vnet = _dcDao.allocateVnet(zone.getId(), config.getAccountId(), context.getReservationId());
|
||||||
|
|
||||||
|
try {
|
||||||
|
vlanTag = Integer.parseInt(vnet);
|
||||||
|
} catch (NumberFormatException e) {
|
||||||
|
throw new CloudRuntimeException("Obtained an invalid guest vlan tag. Exception: " + e.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
implemented.setBroadcastUri(BroadcastDomainType.Vlan.toUri(vlanTag));
|
||||||
|
} else {
|
||||||
|
vlanTag = Integer.parseInt(config.getBroadcastUri().getHost());
|
||||||
|
implemented.setBroadcastUri(config.getBroadcastUri());
|
||||||
|
}
|
||||||
|
|
||||||
|
// Determine the offset from the lowest vlan tag
|
||||||
|
int offset = getVlanOffset(zone, vlanTag);
|
||||||
|
|
||||||
|
// Determine the new gateway and CIDR
|
||||||
|
String[] oldCidr = config.getCidr().split("/");
|
||||||
|
String oldCidrAddress = oldCidr[0];
|
||||||
|
int cidrSize = getGloballyConfiguredCidrSize();
|
||||||
|
|
||||||
|
// If the offset has more bits than there is room for, return null
|
||||||
|
long bitsInOffset = 32 - Integer.numberOfLeadingZeros(offset);
|
||||||
|
if (bitsInOffset > (cidrSize - 8)) {
|
||||||
|
throw new CloudRuntimeException("The offset " + offset + " needs " + bitsInOffset + " bits, but only have " + (cidrSize - 8) + " bits to work with.");
|
||||||
|
}
|
||||||
|
|
||||||
|
long newCidrAddress = (NetUtils.ip2Long(oldCidrAddress) & 0xff000000) | (offset << (32 - cidrSize));
|
||||||
|
implemented.setGateway(NetUtils.long2Ip(newCidrAddress + 1));
|
||||||
|
implemented.setCidr(NetUtils.long2Ip(newCidrAddress) + "/" + cidrSize);
|
||||||
|
implemented.setState(State.Implemented);
|
||||||
|
|
||||||
|
return implemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public NicProfile allocate(Network config, NicProfile nic, VirtualMachineProfile<? extends VirtualMachine> vm) throws InsufficientVirtualNetworkCapcityException, InsufficientAddressCapacityException {
|
||||||
|
NicProfile profile = super.allocate(config, nic, vm);
|
||||||
|
|
||||||
|
if (_ovsNetworkMgr.isOvsNetworkEnabled() || _tunnelMgr.isOvsTunnelEnabled()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_networkMgr.zoneIsConfiguredForExternalNetworking(config.getDataCenterId())) {
|
||||||
|
profile.setStrategy(ReservationStrategy.Start);
|
||||||
|
profile.setIp4Address(null);
|
||||||
|
profile.setGateway(null);
|
||||||
|
profile.setNetmask(null);
|
||||||
|
}
|
||||||
|
|
||||||
|
return profile;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void deallocate(Network config, NicProfile nic, VirtualMachineProfile<? extends VirtualMachine> vm) {
|
||||||
|
super.deallocate(config, nic, vm);
|
||||||
|
|
||||||
|
if (_ovsNetworkMgr.isOvsNetworkEnabled() || _tunnelMgr.isOvsTunnelEnabled()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (_networkMgr.zoneIsConfiguredForExternalNetworking(config.getDataCenterId())) {
|
||||||
|
nic.setIp4Address(null);
|
||||||
|
nic.setGateway(null);
|
||||||
|
nic.setNetmask(null);
|
||||||
|
nic.setBroadcastUri(null);
|
||||||
|
nic.setIsolationUri(null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void reserve(NicProfile nic, Network config, VirtualMachineProfile<? extends VirtualMachine> vm, DeployDestination dest, ReservationContext context) throws InsufficientVirtualNetworkCapcityException, InsufficientAddressCapacityException {
|
||||||
|
assert (nic.getReservationStrategy() == ReservationStrategy.Start) : "What can I do for nics that are not allocated at start? ";
|
||||||
|
if (_ovsNetworkMgr.isOvsNetworkEnabled()) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
DataCenter dc = _dcDao.findById(config.getDataCenterId());
|
||||||
|
if (_networkMgr.zoneIsConfiguredForExternalNetworking(config.getDataCenterId())) {
|
||||||
|
nic.setBroadcastUri(config.getBroadcastUri());
|
||||||
|
nic.setIsolationUri(config.getBroadcastUri());
|
||||||
|
nic.setDns1(dc.getDns1());
|
||||||
|
nic.setDns2(dc.getDns2());
|
||||||
|
nic.setNetmask(NetUtils.cidr2Netmask(config.getCidr()));
|
||||||
|
long cidrAddress = NetUtils.ip2Long(config.getCidr().split("/")[0]);
|
||||||
|
int cidrSize = getGloballyConfiguredCidrSize();
|
||||||
|
nic.setGateway(config.getGateway());
|
||||||
|
|
||||||
|
if (nic.getIp4Address() == null) {
|
||||||
|
nic.setIp4Address(acquireGuestIpAddress(config));
|
||||||
|
} else {
|
||||||
|
long ipMask = NetUtils.ip2Long(nic.getIp4Address()) & ~(0xffffffffffffffffl << (32 - cidrSize));
|
||||||
|
nic.setIp4Address(NetUtils.long2Ip(cidrAddress | ipMask));
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
super.reserve(nic, config, vm, dest, context);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean release(NicProfile nic, VirtualMachineProfile<? extends VirtualMachine> vm, String reservationId) {
|
||||||
|
if (_ovsNetworkMgr.isOvsNetworkEnabled() || _tunnelMgr.isOvsTunnelEnabled()) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkVO network = _networkDao.findById(nic.getNetworkId());
|
||||||
|
if (network != null && _networkMgr.zoneIsConfiguredForExternalNetworking(network.getDataCenterId())) {
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return super.release(nic, vm, reservationId);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private int getGloballyConfiguredCidrSize() {
|
||||||
|
try {
|
||||||
|
String globalVlanBits = _configDao.getValue(Config.GuestVlanBits.key());
|
||||||
|
return 8 + Integer.parseInt(globalVlanBits);
|
||||||
|
} catch (Exception e) {
|
||||||
|
throw new CloudRuntimeException("Failed to read the globally configured VLAN bits size.");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private int getVlanOffset(DataCenter zone, int vlanTag) {
|
||||||
|
if (zone.getVnet() == null) {
|
||||||
|
throw new CloudRuntimeException("Could not find vlan range for zone " + zone.getName() + ".");
|
||||||
|
}
|
||||||
|
|
||||||
|
String vlanRange[] = zone.getVnet().split("-");
|
||||||
|
int lowestVlanTag = Integer.valueOf(vlanRange[0]);
|
||||||
|
return vlanTag - lowestVlanTag;
|
||||||
|
}
|
||||||
|
}
|
||||||
62
server/src/com/cloud/network/guru/OvsGuestNetworkGuru.java
Normal file
62
server/src/com/cloud/network/guru/OvsGuestNetworkGuru.java
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
package com.cloud.network.guru;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
|
||||||
|
import com.cloud.deploy.DeployDestination;
|
||||||
|
import com.cloud.deploy.DeploymentPlan;
|
||||||
|
import com.cloud.network.Network;
|
||||||
|
import com.cloud.network.NetworkManager;
|
||||||
|
import com.cloud.network.NetworkVO;
|
||||||
|
import com.cloud.network.ovs.OvsNetworkManager;
|
||||||
|
import com.cloud.network.ovs.OvsTunnelManager;
|
||||||
|
import com.cloud.offering.NetworkOffering;
|
||||||
|
import com.cloud.user.Account;
|
||||||
|
import com.cloud.utils.component.Inject;
|
||||||
|
import com.cloud.vm.ReservationContext;
|
||||||
|
import com.cloud.network.Networks.BroadcastDomainType;
|
||||||
|
import com.cloud.network.Network.State;
|
||||||
|
|
||||||
|
@Local(value=NetworkGuru.class)
|
||||||
|
public class OvsGuestNetworkGuru extends GuestNetworkGuru {
|
||||||
|
@Inject OvsNetworkManager _ovsNetworkMgr;
|
||||||
|
@Inject NetworkManager _externalNetworkManager;
|
||||||
|
@Inject OvsTunnelManager _ovsTunnelMgr;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Network design(NetworkOffering offering, DeploymentPlan plan, Network userSpecified, Account owner) {
|
||||||
|
|
||||||
|
if (!_ovsNetworkMgr.isOvsNetworkEnabled() && !_ovsTunnelMgr.isOvsTunnelEnabled()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkVO config = (NetworkVO) super.design(offering, plan, userSpecified, owner);
|
||||||
|
if (config == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
config.setBroadcastDomainType(BroadcastDomainType.Vswitch);
|
||||||
|
|
||||||
|
return config;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Network implement(Network config, NetworkOffering offering, DeployDestination dest, ReservationContext context) {
|
||||||
|
assert (config.getState() == State.Implementing) : "Why are we implementing " + config;
|
||||||
|
if (!_ovsNetworkMgr.isOvsNetworkEnabled()&& !_ovsTunnelMgr.isOvsTunnelEnabled()) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
NetworkVO implemented = (NetworkVO)super.implement(config, offering, dest, context);
|
||||||
|
|
||||||
|
String uri = null;
|
||||||
|
if (_ovsNetworkMgr.isOvsNetworkEnabled()) {
|
||||||
|
uri = "vlan";
|
||||||
|
} else if (_ovsTunnelMgr.isOvsTunnelEnabled()) {
|
||||||
|
uri = Long.toString(config.getAccountId());
|
||||||
|
}
|
||||||
|
|
||||||
|
implemented.setBroadcastUri(BroadcastDomainType.Vswitch.toUri(uri));
|
||||||
|
return implemented;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -0,0 +1,53 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (C) 2010 Cloud.com, Inc. All rights reserved.
|
||||||
|
*
|
||||||
|
* This software is licensed under the GNU General Public License v3 or later.
|
||||||
|
*
|
||||||
|
* It is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or any later version.
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
package com.cloud.vm;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
import javax.ejb.Local;
|
||||||
|
import javax.naming.ConfigurationException;
|
||||||
|
|
||||||
|
import com.cloud.cluster.ClusterManagerListener;
|
||||||
|
import com.cloud.cluster.ManagementServerHostVO;
|
||||||
|
|
||||||
|
@Local(value=VirtualMachineManager.class)
|
||||||
|
public class ClusteredVirtualMachineManagerImpl extends VirtualMachineManagerImpl implements ClusterManagerListener {
|
||||||
|
|
||||||
|
protected ClusteredVirtualMachineManagerImpl() {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onManagementNodeJoined(List<ManagementServerHostVO> nodeList, long selfNodeId) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onManagementNodeLeft(List<ManagementServerHostVO> nodeList, long selfNodeId) {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean configure(String name, Map<String, Object> xmlParams) throws ConfigurationException {
|
||||||
|
super.configure(name, xmlParams);
|
||||||
|
|
||||||
|
_clusterMgr.registerListener(this);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
BIN
thirdparty/JAXB2_20070122.jar
vendored
Normal file
BIN
thirdparty/JAXB2_20070122.jar
vendored
Normal file
Binary file not shown.
BIN
thirdparty/apache-log4j-extras-1.0.jar
vendored
Normal file
BIN
thirdparty/apache-log4j-extras-1.0.jar
vendored
Normal file
Binary file not shown.
202
thirdparty/apache-log4j-extras-1.0/LICENSE
vendored
Normal file
202
thirdparty/apache-log4j-extras-1.0/LICENSE
vendored
Normal file
@ -0,0 +1,202 @@
|
|||||||
|
|
||||||
|
Apache License
|
||||||
|
Version 2.0, January 2004
|
||||||
|
http://www.apache.org/licenses/
|
||||||
|
|
||||||
|
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
|
||||||
|
|
||||||
|
1. Definitions.
|
||||||
|
|
||||||
|
"License" shall mean the terms and conditions for use, reproduction,
|
||||||
|
and distribution as defined by Sections 1 through 9 of this document.
|
||||||
|
|
||||||
|
"Licensor" shall mean the copyright owner or entity authorized by
|
||||||
|
the copyright owner that is granting the License.
|
||||||
|
|
||||||
|
"Legal Entity" shall mean the union of the acting entity and all
|
||||||
|
other entities that control, are controlled by, or are under common
|
||||||
|
control with that entity. For the purposes of this definition,
|
||||||
|
"control" means (i) the power, direct or indirect, to cause the
|
||||||
|
direction or management of such entity, whether by contract or
|
||||||
|
otherwise, or (ii) ownership of fifty percent (50%) or more of the
|
||||||
|
outstanding shares, or (iii) beneficial ownership of such entity.
|
||||||
|
|
||||||
|
"You" (or "Your") shall mean an individual or Legal Entity
|
||||||
|
exercising permissions granted by this License.
|
||||||
|
|
||||||
|
"Source" form shall mean the preferred form for making modifications,
|
||||||
|
including but not limited to software source code, documentation
|
||||||
|
source, and configuration files.
|
||||||
|
|
||||||
|
"Object" form shall mean any form resulting from mechanical
|
||||||
|
transformation or translation of a Source form, including but
|
||||||
|
not limited to compiled object code, generated documentation,
|
||||||
|
and conversions to other media types.
|
||||||
|
|
||||||
|
"Work" shall mean the work of authorship, whether in Source or
|
||||||
|
Object form, made available under the License, as indicated by a
|
||||||
|
copyright notice that is included in or attached to the work
|
||||||
|
(an example is provided in the Appendix below).
|
||||||
|
|
||||||
|
"Derivative Works" shall mean any work, whether in Source or Object
|
||||||
|
form, that is based on (or derived from) the Work and for which the
|
||||||
|
editorial revisions, annotations, elaborations, or other modifications
|
||||||
|
represent, as a whole, an original work of authorship. For the purposes
|
||||||
|
of this License, Derivative Works shall not include works that remain
|
||||||
|
separable from, or merely link (or bind by name) to the interfaces of,
|
||||||
|
the Work and Derivative Works thereof.
|
||||||
|
|
||||||
|
"Contribution" shall mean any work of authorship, including
|
||||||
|
the original version of the Work and any modifications or additions
|
||||||
|
to that Work or Derivative Works thereof, that is intentionally
|
||||||
|
submitted to Licensor for inclusion in the Work by the copyright owner
|
||||||
|
or by an individual or Legal Entity authorized to submit on behalf of
|
||||||
|
the copyright owner. For the purposes of this definition, "submitted"
|
||||||
|
means any form of electronic, verbal, or written communication sent
|
||||||
|
to the Licensor or its representatives, including but not limited to
|
||||||
|
communication on electronic mailing lists, source code control systems,
|
||||||
|
and issue tracking systems that are managed by, or on behalf of, the
|
||||||
|
Licensor for the purpose of discussing and improving the Work, but
|
||||||
|
excluding communication that is conspicuously marked or otherwise
|
||||||
|
designated in writing by the copyright owner as "Not a Contribution."
|
||||||
|
|
||||||
|
"Contributor" shall mean Licensor and any individual or Legal Entity
|
||||||
|
on behalf of whom a Contribution has been received by Licensor and
|
||||||
|
subsequently incorporated within the Work.
|
||||||
|
|
||||||
|
2. Grant of Copyright License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
copyright license to reproduce, prepare Derivative Works of,
|
||||||
|
publicly display, publicly perform, sublicense, and distribute the
|
||||||
|
Work and such Derivative Works in Source or Object form.
|
||||||
|
|
||||||
|
3. Grant of Patent License. Subject to the terms and conditions of
|
||||||
|
this License, each Contributor hereby grants to You a perpetual,
|
||||||
|
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
|
||||||
|
(except as stated in this section) patent license to make, have made,
|
||||||
|
use, offer to sell, sell, import, and otherwise transfer the Work,
|
||||||
|
where such license applies only to those patent claims licensable
|
||||||
|
by such Contributor that are necessarily infringed by their
|
||||||
|
Contribution(s) alone or by combination of their Contribution(s)
|
||||||
|
with the Work to which such Contribution(s) was submitted. If You
|
||||||
|
institute patent litigation against any entity (including a
|
||||||
|
cross-claim or counterclaim in a lawsuit) alleging that the Work
|
||||||
|
or a Contribution incorporated within the Work constitutes direct
|
||||||
|
or contributory patent infringement, then any patent licenses
|
||||||
|
granted to You under this License for that Work shall terminate
|
||||||
|
as of the date such litigation is filed.
|
||||||
|
|
||||||
|
4. Redistribution. You may reproduce and distribute copies of the
|
||||||
|
Work or Derivative Works thereof in any medium, with or without
|
||||||
|
modifications, and in Source or Object form, provided that You
|
||||||
|
meet the following conditions:
|
||||||
|
|
||||||
|
(a) You must give any other recipients of the Work or
|
||||||
|
Derivative Works a copy of this License; and
|
||||||
|
|
||||||
|
(b) You must cause any modified files to carry prominent notices
|
||||||
|
stating that You changed the files; and
|
||||||
|
|
||||||
|
(c) You must retain, in the Source form of any Derivative Works
|
||||||
|
that You distribute, all copyright, patent, trademark, and
|
||||||
|
attribution notices from the Source form of the Work,
|
||||||
|
excluding those notices that do not pertain to any part of
|
||||||
|
the Derivative Works; and
|
||||||
|
|
||||||
|
(d) If the Work includes a "NOTICE" text file as part of its
|
||||||
|
distribution, then any Derivative Works that You distribute must
|
||||||
|
include a readable copy of the attribution notices contained
|
||||||
|
within such NOTICE file, excluding those notices that do not
|
||||||
|
pertain to any part of the Derivative Works, in at least one
|
||||||
|
of the following places: within a NOTICE text file distributed
|
||||||
|
as part of the Derivative Works; within the Source form or
|
||||||
|
documentation, if provided along with the Derivative Works; or,
|
||||||
|
within a display generated by the Derivative Works, if and
|
||||||
|
wherever such third-party notices normally appear. The contents
|
||||||
|
of the NOTICE file are for informational purposes only and
|
||||||
|
do not modify the License. You may add Your own attribution
|
||||||
|
notices within Derivative Works that You distribute, alongside
|
||||||
|
or as an addendum to the NOTICE text from the Work, provided
|
||||||
|
that such additional attribution notices cannot be construed
|
||||||
|
as modifying the License.
|
||||||
|
|
||||||
|
You may add Your own copyright statement to Your modifications and
|
||||||
|
may provide additional or different license terms and conditions
|
||||||
|
for use, reproduction, or distribution of Your modifications, or
|
||||||
|
for any such Derivative Works as a whole, provided Your use,
|
||||||
|
reproduction, and distribution of the Work otherwise complies with
|
||||||
|
the conditions stated in this License.
|
||||||
|
|
||||||
|
5. Submission of Contributions. Unless You explicitly state otherwise,
|
||||||
|
any Contribution intentionally submitted for inclusion in the Work
|
||||||
|
by You to the Licensor shall be under the terms and conditions of
|
||||||
|
this License, without any additional terms or conditions.
|
||||||
|
Notwithstanding the above, nothing herein shall supersede or modify
|
||||||
|
the terms of any separate license agreement you may have executed
|
||||||
|
with Licensor regarding such Contributions.
|
||||||
|
|
||||||
|
6. Trademarks. This License does not grant permission to use the trade
|
||||||
|
names, trademarks, service marks, or product names of the Licensor,
|
||||||
|
except as required for reasonable and customary use in describing the
|
||||||
|
origin of the Work and reproducing the content of the NOTICE file.
|
||||||
|
|
||||||
|
7. Disclaimer of Warranty. Unless required by applicable law or
|
||||||
|
agreed to in writing, Licensor provides the Work (and each
|
||||||
|
Contributor provides its Contributions) on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
||||||
|
implied, including, without limitation, any warranties or conditions
|
||||||
|
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
|
||||||
|
PARTICULAR PURPOSE. You are solely responsible for determining the
|
||||||
|
appropriateness of using or redistributing the Work and assume any
|
||||||
|
risks associated with Your exercise of permissions under this License.
|
||||||
|
|
||||||
|
8. Limitation of Liability. In no event and under no legal theory,
|
||||||
|
whether in tort (including negligence), contract, or otherwise,
|
||||||
|
unless required by applicable law (such as deliberate and grossly
|
||||||
|
negligent acts) or agreed to in writing, shall any Contributor be
|
||||||
|
liable to You for damages, including any direct, indirect, special,
|
||||||
|
incidental, or consequential damages of any character arising as a
|
||||||
|
result of this License or out of the use or inability to use the
|
||||||
|
Work (including but not limited to damages for loss of goodwill,
|
||||||
|
work stoppage, computer failure or malfunction, or any and all
|
||||||
|
other commercial damages or losses), even if such Contributor
|
||||||
|
has been advised of the possibility of such damages.
|
||||||
|
|
||||||
|
9. Accepting Warranty or Additional Liability. While redistributing
|
||||||
|
the Work or Derivative Works thereof, You may choose to offer,
|
||||||
|
and charge a fee for, acceptance of support, warranty, indemnity,
|
||||||
|
or other liability obligations and/or rights consistent with this
|
||||||
|
License. However, in accepting such obligations, You may act only
|
||||||
|
on Your own behalf and on Your sole responsibility, not on behalf
|
||||||
|
of any other Contributor, and only if You agree to indemnify,
|
||||||
|
defend, and hold each Contributor harmless for any liability
|
||||||
|
incurred by, or claims asserted against, such Contributor by reason
|
||||||
|
of your accepting any such warranty or additional liability.
|
||||||
|
|
||||||
|
END OF TERMS AND CONDITIONS
|
||||||
|
|
||||||
|
APPENDIX: How to apply the Apache License to your work.
|
||||||
|
|
||||||
|
To apply the Apache License to your work, attach the following
|
||||||
|
boilerplate notice, with the fields enclosed by brackets "[]"
|
||||||
|
replaced with your own identifying information. (Don't include
|
||||||
|
the brackets!) The text should be enclosed in the appropriate
|
||||||
|
comment syntax for the file format. We also recommend that a
|
||||||
|
file or class name and description of purpose be included on the
|
||||||
|
same "printed page" as the copyright notice for easier
|
||||||
|
identification within third-party archives.
|
||||||
|
|
||||||
|
Copyright 1999-2005 The Apache Software Foundation
|
||||||
|
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
you may not use this file except in compliance with the License.
|
||||||
|
You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
5
thirdparty/apache-log4j-extras-1.0/NOTICE
vendored
Normal file
5
thirdparty/apache-log4j-extras-1.0/NOTICE
vendored
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
Apache Extras Companion for log4j 1.2.
|
||||||
|
Copyright 2007 The Apache Software Foundation
|
||||||
|
|
||||||
|
This product includes software developed at
|
||||||
|
The Apache Software Foundation (http://www.apache.org/).
|
||||||
BIN
thirdparty/apache-log4j-extras-1.0/apache-log4j-extras-1.0.jar
vendored
Normal file
BIN
thirdparty/apache-log4j-extras-1.0/apache-log4j-extras-1.0.jar
vendored
Normal file
Binary file not shown.
184
thirdparty/apache-log4j-extras-1.0/build.xml
vendored
Normal file
184
thirdparty/apache-log4j-extras-1.0/build.xml
vendored
Normal file
@ -0,0 +1,184 @@
|
|||||||
|
<!--
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
|
this work for additional information regarding copyright ownership.
|
||||||
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
(the "License"); you may not use this file except in compliance with
|
||||||
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
|
||||||
|
-->
|
||||||
|
|
||||||
|
<!--
|
||||||
|
|
||||||
|
This is a minimal build file to support Gump.
|
||||||
|
Use of Maven to build this component is recommended.
|
||||||
|
|
||||||
|
Specify -Dcompanion.jar=foo.jar to test a previously prepared jar.
|
||||||
|
|
||||||
|
-->
|
||||||
|
<project default="test">
|
||||||
|
<!-- use build.properties file or command line to override these properties -->
|
||||||
|
<property file="build.properties"/>
|
||||||
|
|
||||||
|
<!-- project details -->
|
||||||
|
<property name="project.name" value="apache-log4j-extras"/>
|
||||||
|
<property name="project.title" value="Apache Extras Companion for log4j 1.2."/>
|
||||||
|
<property name="project.version" value="1.0"/>
|
||||||
|
<property name="project.jar" value="${project.name}-${project.version}.jar"/>
|
||||||
|
|
||||||
|
<!-- Location of local Maven 2 repository -->
|
||||||
|
<property name="m2_repo" location="${user.home}/.m2/repository"/>
|
||||||
|
|
||||||
|
<!-- Versions for dependencies -->
|
||||||
|
<property name="log4j.version" value="1.2.9"/>
|
||||||
|
<property name="junit.version" value="3.8.1"/>
|
||||||
|
|
||||||
|
<!-- Dependency locations - assumed to be in Maven 2 repository -->
|
||||||
|
<property name="junit.jar"
|
||||||
|
location="${m2_repo}/junit/junit/${junit.version}/junit-${junit.version}.jar"/>
|
||||||
|
<property name="log4j.jar"
|
||||||
|
location="${m2_repo}/log4j/log4j/${log4j.version}/log4j-${log4j.version}.jar"/>
|
||||||
|
|
||||||
|
<!-- Java compiler settings -->
|
||||||
|
<property name="javac.source" value="1.2"/>
|
||||||
|
<property name="javac.target" value="1.1"/>
|
||||||
|
<property name="javac.deprecation" value="true"/>
|
||||||
|
<property name="javac.debug" value="true"/>
|
||||||
|
|
||||||
|
<property name="svnrepo.url" value="https://svn.apache.org/repos/asf"/>
|
||||||
|
<property name="svnsite.url" value="${svnrepo.url}/logging/site/trunk/docs/log4j/companions/extras"/>
|
||||||
|
<available property="svn-available" file="target/site-deploy/.svn"/>
|
||||||
|
|
||||||
|
|
||||||
|
<target name="init"/>
|
||||||
|
|
||||||
|
<target name="clean" depends="init" description="Clean up generated files">
|
||||||
|
<delete dir="target"/>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
|
||||||
|
<target name="compile" depends="init" unless="companion.jar" description="Compile implementation files">
|
||||||
|
<mkdir dir="target/classes"/>
|
||||||
|
<javac destdir="target/classes"
|
||||||
|
srcdir="src/main/java"
|
||||||
|
deprecation="${javac.deprecation}"
|
||||||
|
debug="${javac.debug}"
|
||||||
|
target="${javac.target}"
|
||||||
|
source="${javac.source}"
|
||||||
|
classpath="${log4j.jar}"/>
|
||||||
|
<copy todir="target/classes">
|
||||||
|
<fileset dir="src/main/resources"/>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="jar" depends="compile" unless="companion.jar" description="Create jar">
|
||||||
|
<jar destfile="target/${project.jar}"
|
||||||
|
basedir="target/classes">
|
||||||
|
<manifest>
|
||||||
|
<attribute name="Built-By" value="${user.name}"/>
|
||||||
|
<section name="common">
|
||||||
|
<attribute name="Implementation-Title" value="${project.title}"/>
|
||||||
|
<attribute name="Implementation-Version" value="${project.version}"/>
|
||||||
|
<attribute name="Implementation-Vendor" value="Apache Software Foundation"/>
|
||||||
|
</section>
|
||||||
|
</manifest>
|
||||||
|
</jar>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="test-compile" depends="jar" description="Compile test files">
|
||||||
|
<property name="companion.jar" value="target/${project.jar}"/>
|
||||||
|
<mkdir dir="target/test-classes"/>
|
||||||
|
<javac destdir="target/test-classes"
|
||||||
|
srcdir="src/test/java"
|
||||||
|
deprecation="${javac.deprecation}"
|
||||||
|
debug="${javac.debug}"
|
||||||
|
target="${javac.target}"
|
||||||
|
source="${javac.source}"
|
||||||
|
classpath="${log4j.jar}:${junit.jar}:${companion.jar}"/>
|
||||||
|
<copy todir="target/test-classes">
|
||||||
|
<fileset dir="src/test/resources"/>
|
||||||
|
</copy>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
|
||||||
|
<target name="test" depends="test-compile" description="Run unit tests">
|
||||||
|
<junit printsummary="yes" fork="yes" dir="target">
|
||||||
|
<classpath path="target/test-classes:${companion.jar}:${log4j.jar}"/>
|
||||||
|
<batchtest>
|
||||||
|
<fileset dir="src/test/java/">
|
||||||
|
<include name="**/*TestCase.java"/>
|
||||||
|
<include name="**/*Test.java"/>
|
||||||
|
</fileset>
|
||||||
|
</batchtest>
|
||||||
|
<formatter type="plain" usefile="false"/>
|
||||||
|
</junit>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
|
||||||
|
<target name="checkout-site" unless="svn-available">
|
||||||
|
<exec executable="svn">
|
||||||
|
<arg value="co"/>
|
||||||
|
<arg value="${svnsite.url}"/>
|
||||||
|
<arg value="target/site-deploy"/>
|
||||||
|
</exec>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="update-site" if="svn-available">
|
||||||
|
<exec executable="svn" dir="target/site-deploy" failonerror="true">
|
||||||
|
<arg value="update"/>
|
||||||
|
</exec>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="post-site" depends="checkout-site, update-site"/>
|
||||||
|
|
||||||
|
|
||||||
|
<target name="mime=html">
|
||||||
|
<exec executable="svn">
|
||||||
|
<arg value="propset"/>
|
||||||
|
<arg value="svn:mime-type"/>
|
||||||
|
<arg value="text/html"/>
|
||||||
|
<arg value="${src.html}"/>
|
||||||
|
</exec>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
<target name="mime=css">
|
||||||
|
<exec executable="svn">
|
||||||
|
<arg value="propset"/>
|
||||||
|
<arg value="svn:mime-type"/>
|
||||||
|
<arg value="text/css"/>
|
||||||
|
<arg value="${src.css}"/>
|
||||||
|
</exec>
|
||||||
|
</target>
|
||||||
|
|
||||||
|
|
||||||
|
<target name="site-deploy">
|
||||||
|
<!-- Add any new files (and generate innocuous warnings for the existing content) -->
|
||||||
|
<delete file="target/site-deploy/svn-commit.tmp~"/>
|
||||||
|
<exec executable="bash" dir="target/site-deploy" failonerror="true">
|
||||||
|
<arg line='-c "svn add --force *"'/>
|
||||||
|
</exec>
|
||||||
|
<taskdef name="foreach" classname="net.sf.antcontrib.logic.ForEach" />
|
||||||
|
<foreach target="mime=html" param="src.html">
|
||||||
|
<path>
|
||||||
|
<fileset dir="target/site-deploy" includes="**/*.html"/>
|
||||||
|
</path>
|
||||||
|
</foreach>
|
||||||
|
<foreach target="mime=css" param="src.css">
|
||||||
|
<path>
|
||||||
|
<fileset dir="target/site-deploy" includes="**/*.css"/>
|
||||||
|
</path>
|
||||||
|
</foreach>
|
||||||
|
<!-- requires that SVN_EDITOR, VISUAL or EDITOR being set to edit commit description -->
|
||||||
|
<exec executable="svn" dir="target/site-deploy" failonerror="true">
|
||||||
|
<arg value="commit"/>
|
||||||
|
</exec>
|
||||||
|
</target>
|
||||||
|
</project>
|
||||||
283
thirdparty/apache-log4j-extras-1.0/pom.xml
vendored
Normal file
283
thirdparty/apache-log4j-extras-1.0/pom.xml
vendored
Normal file
@ -0,0 +1,283 @@
|
|||||||
|
<!--
|
||||||
|
Licensed to the Apache Software Foundation (ASF) under one or more
|
||||||
|
contributor license agreements. See the NOTICE file distributed with
|
||||||
|
this work for additional information regarding copyright ownership.
|
||||||
|
The ASF licenses this file to You under the Apache License, Version 2.0
|
||||||
|
(the "License"); you may not use this file except in compliance with
|
||||||
|
the License. You may obtain a copy of the License at
|
||||||
|
|
||||||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
Unless required by applicable law or agreed to in writing, software
|
||||||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
See the License for the specific language governing permissions and
|
||||||
|
limitations under the License.
|
||||||
|
|
||||||
|
-->
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
<groupId>log4j</groupId>
|
||||||
|
<artifactId>apache-log4j-extras</artifactId>
|
||||||
|
<packaging>jar</packaging>
|
||||||
|
<version>1.0</version>
|
||||||
|
<name>Apache Extras Companion for log4j 1.2.</name>
|
||||||
|
<description>This companion provides additional appenders, filters and
|
||||||
|
other capabilities for log4j 1.2. Several of these were backported from
|
||||||
|
the abandoned log4j 1.3 development effort.</description>
|
||||||
|
<url>http://logging.apache.org:80/log4j/companions/extras</url>
|
||||||
|
<issueManagement>
|
||||||
|
<system>Bugzilla</system>
|
||||||
|
<url>http://issues.apache.org/bugzilla/</url>
|
||||||
|
</issueManagement>
|
||||||
|
<ciManagement>
|
||||||
|
<system>Gump</system>
|
||||||
|
<url>http://vmgump.apache.org/gump/public/logging-log4j-extras/logging-log4j-extras/index.html</url>
|
||||||
|
</ciManagement>
|
||||||
|
<mailingLists>
|
||||||
|
<mailingList>
|
||||||
|
<name>log4j-user</name>
|
||||||
|
<subscribe>log4j-user-subscribe@logging.apache.org</subscribe>
|
||||||
|
<unsubscribe>log4j-user-unsubscribe@logging.apache.org</unsubscribe>
|
||||||
|
<post>log4j-user@logging.apache.org</post>
|
||||||
|
<archive>http://mail-archives.apache.org/mod_mbox/logging-log4j-user/</archive>
|
||||||
|
<otherArchives>
|
||||||
|
<otherArchive>http://marc.theaimsgroup.com/?l=log4j-user&r=1&w=2</otherArchive>
|
||||||
|
<otherArchive>http://dir.gmane.org/gmane.comp.jakarta.log4j.user</otherArchive>
|
||||||
|
</otherArchives>
|
||||||
|
</mailingList>
|
||||||
|
<mailingList>
|
||||||
|
<name>log4j-dev</name>
|
||||||
|
<subscribe>log4j-dev-subscribe@logging.apache.org</subscribe>
|
||||||
|
<unsubscribe>log4j-dev-unsubscribe@logging.apache.org</unsubscribe>
|
||||||
|
<post>log4j-dev@logging.apache.org</post>
|
||||||
|
<archive>http://mail-archives.apache.org/mod_mbox/logging-log4j-dev/</archive>
|
||||||
|
<otherArchives>
|
||||||
|
<otherArchive>http://marc.theaimsgroup.com/?l=log4j-dev&r=1&w=2</otherArchive>
|
||||||
|
<otherArchive>http://dir.gmane.org/gmane.comp.jakarta.log4j.devel</otherArchive>
|
||||||
|
</otherArchives>
|
||||||
|
</mailingList>
|
||||||
|
</mailingLists>
|
||||||
|
<licenses>
|
||||||
|
<license>
|
||||||
|
<name>Apache License, Version 2.0</name>
|
||||||
|
<url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
|
||||||
|
<distribution>repo</distribution>
|
||||||
|
</license>
|
||||||
|
</licenses>
|
||||||
|
<scm>
|
||||||
|
<connection>scm:svn:http://svn.apache.org/repos/asf/logging/log4j/companions/extras/tags/v1_0_rc5</connection>
|
||||||
|
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/logging/log4j/companions/extras/tags/v1_0_rc5</developerConnection>
|
||||||
|
<url>http://svn.apache.org/viewcvs.cgi/logging/log4j/companions/extras/tags/v1_0_rc5</url>
|
||||||
|
</scm>
|
||||||
|
<organization>
|
||||||
|
<name>Apache Software Foundation</name>
|
||||||
|
<url>http://www.apache.org</url>
|
||||||
|
</organization>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-surefire-plugin</artifactId>
|
||||||
|
<configuration>
|
||||||
|
<workingDirectory>target</workingDirectory>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-compiler-plugin</artifactId>
|
||||||
|
<configuration>
|
||||||
|
<source>1.2</source>
|
||||||
|
<target>1.1</target>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-jar-plugin</artifactId>
|
||||||
|
<configuration>
|
||||||
|
<archive>
|
||||||
|
<manifestSections>
|
||||||
|
<manifestSection>
|
||||||
|
<name>org.apache.log4j</name>
|
||||||
|
<manifestEntries>
|
||||||
|
<Implementation-Title>${project.name}</Implementation-Title>
|
||||||
|
<Implementation-Version>${project.version}</Implementation-Version>
|
||||||
|
<Implementation-Vendor>Apache Software Foundation</Implementation-Vendor>
|
||||||
|
</manifestEntries>
|
||||||
|
</manifestSection>
|
||||||
|
</manifestSections>
|
||||||
|
</archive>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-antrun-plugin</artifactId>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<phase>site</phase>
|
||||||
|
<id>untag-site</id>
|
||||||
|
<configuration>
|
||||||
|
<tasks>
|
||||||
|
<taskdef name="replaceregexp" classname="org.apache.tools.ant.taskdefs.optional.ReplaceRegExp" />
|
||||||
|
<replaceregexp file="target/site/source-repository.html" match="/tags/[^ ]*" replace="/trunk" flags="g" />
|
||||||
|
<replaceregexp match="-- Generated by (.*) on .*--" replace="-- Generated by \1 --" flags="g">
|
||||||
|
<fileset dir="target/site/apidocs" includes="**/*.html" />
|
||||||
|
</replaceregexp>
|
||||||
|
</tasks>
|
||||||
|
</configuration>
|
||||||
|
<goals>
|
||||||
|
<goal>run</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<phase>post-site</phase>
|
||||||
|
<id>post-site</id>
|
||||||
|
<configuration>
|
||||||
|
<tasks>
|
||||||
|
<ant target="post-site" />
|
||||||
|
</tasks>
|
||||||
|
</configuration>
|
||||||
|
<goals>
|
||||||
|
<goal>run</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
<execution>
|
||||||
|
<phase>site-deploy</phase>
|
||||||
|
<id>site-deploy</id>
|
||||||
|
<configuration>
|
||||||
|
<tasks>
|
||||||
|
<ant target="site-deploy" />
|
||||||
|
</tasks>
|
||||||
|
</configuration>
|
||||||
|
<goals>
|
||||||
|
<goal>run</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>ant</groupId>
|
||||||
|
<artifactId>ant-nodeps</artifactId>
|
||||||
|
<version>1.6.5</version>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>ant-contrib</groupId>
|
||||||
|
<artifactId>ant-contrib</artifactId>
|
||||||
|
<version>1.0b2</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-assembly-plugin</artifactId>
|
||||||
|
<configuration>
|
||||||
|
<descriptors>
|
||||||
|
<descriptor>src/assembly/bin.xml</descriptor>
|
||||||
|
</descriptors>
|
||||||
|
<appendAssemblyId>false</appendAssemblyId>
|
||||||
|
</configuration>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<goals>
|
||||||
|
<goal>assembly</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-javadoc-plugin</artifactId>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<goals>
|
||||||
|
<goal>jar</goal>
|
||||||
|
<goal>javadoc</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-source-plugin</artifactId>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<goals>
|
||||||
|
<goal>jar</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.codehaus.mojo</groupId>
|
||||||
|
<artifactId>rat-maven-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
<dependencies>
|
||||||
|
<dependency>
|
||||||
|
<groupId>junit</groupId>
|
||||||
|
<artifactId>junit</artifactId>
|
||||||
|
<version>3.8.1</version>
|
||||||
|
<scope>test</scope>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>log4j</groupId>
|
||||||
|
<artifactId>log4j</artifactId>
|
||||||
|
<version>1.2.9</version>
|
||||||
|
</dependency>
|
||||||
|
</dependencies>
|
||||||
|
<reporting>
|
||||||
|
|
||||||
|
<excludeDefaults>true</excludeDefaults>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-project-info-reports-plugin</artifactId>
|
||||||
|
<reportSets>
|
||||||
|
<reportSet>
|
||||||
|
<reports>
|
||||||
|
<report>scm</report>
|
||||||
|
<report>dependencies</report>
|
||||||
|
<report>cim</report>
|
||||||
|
<report>issue-tracking</report>
|
||||||
|
<report>mailing-list</report>
|
||||||
|
<report>license</report>
|
||||||
|
</reports>
|
||||||
|
</reportSet>
|
||||||
|
</reportSets>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.codehaus.mojo</groupId>
|
||||||
|
<artifactId>jxr-maven-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-release-plugin</artifactId>
|
||||||
|
<!-- attempt to work-around MRELEASE-273, see bug 42099 for release build notes -->
|
||||||
|
<configuration>
|
||||||
|
<goals>package site-deploy assembly:attached deploy</goals>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-changes-plugin</artifactId>
|
||||||
|
<reportSets>
|
||||||
|
<reportSet>
|
||||||
|
<reports>
|
||||||
|
<report>changes-report</report>
|
||||||
|
</reports>
|
||||||
|
</reportSet>
|
||||||
|
</reportSets>
|
||||||
|
<configuration>
|
||||||
|
<issueLinkTemplate>%URL%/show_bug.cgi?id=%ISSUE%</issueLinkTemplate>
|
||||||
|
</configuration>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-pmd-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
<plugin>
|
||||||
|
<artifactId>maven-javadoc-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</reporting>
|
||||||
|
<distributionManagement>
|
||||||
|
<repository>
|
||||||
|
<id>logging.repo</id>
|
||||||
|
<url>scp://people.apache.org/www/people.apache.org/builds/logging/repo/</url>
|
||||||
|
</repository>
|
||||||
|
<site>
|
||||||
|
<id>logging.site</id>
|
||||||
|
<url>scp://localhost/${user.dir}/target/site-deploy</url>
|
||||||
|
</site>
|
||||||
|
</distributionManagement>
|
||||||
|
</project>
|
||||||
196
thirdparty/apache-log4j-extras-1.0/site/apidocs/allclasses-frame.html
vendored
Normal file
196
thirdparty/apache-log4j-extras-1.0/site/apidocs/allclasses-frame.html
vendored
Normal file
@ -0,0 +1,196 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
All Classes (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white">
|
||||||
|
<FONT size="+1" CLASS="FrameHeadingFont">
|
||||||
|
<B>All Classes</B></FONT>
|
||||||
|
<BR>
|
||||||
|
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD NOWRAP><FONT CLASS="FrameItemFont"><A HREF="org/apache/log4j/rule/AbstractRule.html" title="class in org.apache.log4j.rule" target="classFrame">AbstractRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/Action.html" title="interface in org.apache.log4j.rolling.helper" target="classFrame"><I>Action</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/ActionBase.html" title="class in org.apache.log4j.rolling.helper" target="classFrame">ActionBase</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/AndFilter.html" title="class in org.apache.log4j.filter" target="classFrame">AndFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/AndRule.html" title="class in org.apache.log4j.rule" target="classFrame">AndRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/BridgePatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">BridgePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/BridgePatternParser.html" title="class in org.apache.log4j.pattern" target="classFrame">BridgePatternParser</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/CachedDateFormat.html" title="class in org.apache.log4j.pattern" target="classFrame">CachedDateFormat</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/ClassNamePatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">ClassNamePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/ColorRule.html" title="class in org.apache.log4j.rule" target="classFrame">ColorRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/CompositeAction.html" title="class in org.apache.log4j.rolling.helper" target="classFrame">CompositeAction</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/DatePatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">DatePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter" target="classFrame">DenyAllFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/extras/DOMConfigurator.html" title="class in org.apache.log4j.extras" target="classFrame">DOMConfigurator</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/EnhancedPatternLayout.html" title="class in org.apache.log4j" target="classFrame">EnhancedPatternLayout</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/EqualsRule.html" title="class in org.apache.log4j.rule" target="classFrame">EqualsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/ExistsRule.html" title="class in org.apache.log4j.rule" target="classFrame">ExistsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter" target="classFrame">ExpressionFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/ExpressionRule.html" title="class in org.apache.log4j.rule" target="classFrame">ExpressionRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/FileDatePatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">FileDatePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/FileLocationPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">FileLocationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/FileRenameAction.html" title="class in org.apache.log4j.rolling.helper" target="classFrame">FileRenameAction</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/FilterBasedTriggeringPolicy.html" title="class in org.apache.log4j.rolling" target="classFrame">FilterBasedTriggeringPolicy</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/FixedWindowRollingPolicy.html" title="class in org.apache.log4j.rolling" target="classFrame">FixedWindowRollingPolicy</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/FormattingInfo.html" title="class in org.apache.log4j.pattern" target="classFrame">FormattingInfo</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/FullLocationPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">FullLocationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/GZCompressAction.html" title="class in org.apache.log4j.rolling.helper" target="classFrame">GZCompressAction</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/InequalityRule.html" title="class in org.apache.log4j.rule" target="classFrame">InequalityRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/InFixToPostFix.html" title="class in org.apache.log4j.rule" target="classFrame">InFixToPostFix</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/IntegerPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">IntegerPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/LevelEqualsRule.html" title="class in org.apache.log4j.rule" target="classFrame">LevelEqualsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/LevelInequalityRule.html" title="class in org.apache.log4j.rule" target="classFrame">LevelInequalityRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter" target="classFrame">LevelMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LevelPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">LevelPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter" target="classFrame">LevelRangeFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/LikeRule.html" title="class in org.apache.log4j.rule" target="classFrame">LikeRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LineLocationPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">LineLocationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LineSeparatorPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">LineSeparatorPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LiteralPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">LiteralPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter" target="classFrame">LocationInfoFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LogEvent.html" title="class in org.apache.log4j.pattern" target="classFrame">LogEvent</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter" target="classFrame">LoggerMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LoggerPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">LoggerPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html" title="class in org.apache.log4j.spi" target="classFrame">LoggingEventFieldResolver</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LoggingEventPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">LoggingEventPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/LogMF.html" title="class in org.apache.log4j" target="classFrame">LogMF</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/LogSF.html" title="class in org.apache.log4j" target="classFrame">LogSF</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/helpers/MDCKeySetExtractor.html" title="class in org.apache.log4j.helpers" target="classFrame">MDCKeySetExtractor</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/MessagePatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">MessagePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/MethodLocationPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">MethodLocationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/NameAbbreviator.html" title="class in org.apache.log4j.pattern" target="classFrame">NameAbbreviator</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/NamePatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">NamePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/NDCPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">NDCPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/NotEqualsRule.html" title="class in org.apache.log4j.rule" target="classFrame">NotEqualsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/NotRule.html" title="class in org.apache.log4j.rule" target="classFrame">NotRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/OrRule.html" title="class in org.apache.log4j.rule" target="classFrame">OrRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/PartialTextMatchRule.html" title="class in org.apache.log4j.rule" target="classFrame">PartialTextMatchRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/PatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">PatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/PatternParser.html" title="class in org.apache.log4j.pattern" target="classFrame">PatternParser</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/PropertiesPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">PropertiesPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/RelativeTimePatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">RelativeTimePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RollingFileAppender.html" title="class in org.apache.log4j.rolling" target="classFrame">RollingFileAppender</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RollingPolicy.html" title="interface in org.apache.log4j.rolling" target="classFrame"><I>RollingPolicy</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RollingPolicyBase.html" title="class in org.apache.log4j.rolling" target="classFrame">RollingPolicyBase</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RolloverDescription.html" title="interface in org.apache.log4j.rolling" target="classFrame"><I>RolloverDescription</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RolloverDescriptionImpl.html" title="class in org.apache.log4j.rolling" target="classFrame">RolloverDescriptionImpl</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/Rule.html" title="interface in org.apache.log4j.rule" target="classFrame"><I>Rule</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/RuleFactory.html" title="class in org.apache.log4j.rule" target="classFrame">RuleFactory</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/SequenceNumberPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">SequenceNumberPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/SizeBasedTriggeringPolicy.html" title="class in org.apache.log4j.rolling" target="classFrame">SizeBasedTriggeringPolicy</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/varia/SoundAppender.html" title="class in org.apache.log4j.varia" target="classFrame">SoundAppender</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter" target="classFrame">StringMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/ThreadPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">ThreadPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/ThrowableInformationPatternConverter.html" title="class in org.apache.log4j.pattern" target="classFrame">ThrowableInformationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/TimeBasedRollingPolicy.html" title="class in org.apache.log4j.rolling" target="classFrame">TimeBasedRollingPolicy</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/TimeFilter.html" title="class in org.apache.log4j.filter" target="classFrame">TimeFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/TimestampEqualsRule.html" title="class in org.apache.log4j.rule" target="classFrame">TimestampEqualsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/TimestampInequalityRule.html" title="class in org.apache.log4j.rule" target="classFrame">TimestampInequalityRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/TriggeringPolicy.html" title="interface in org.apache.log4j.rolling" target="classFrame"><I>TriggeringPolicy</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/xml/UnrecognizedElementHandler.html" title="interface in org.apache.log4j.xml" target="classFrame"><I>UnrecognizedElementHandler</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html" title="class in org.apache.log4j.helpers" target="classFrame">UtilLoggingLevel</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/xml/XSLTLayout.html" title="class in org.apache.log4j.xml" target="classFrame">XSLTLayout</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/ZipCompressAction.html" title="class in org.apache.log4j.rolling.helper" target="classFrame">ZipCompressAction</A>
|
||||||
|
<BR>
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
196
thirdparty/apache-log4j-extras-1.0/site/apidocs/allclasses-noframe.html
vendored
Normal file
196
thirdparty/apache-log4j-extras-1.0/site/apidocs/allclasses-noframe.html
vendored
Normal file
@ -0,0 +1,196 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
All Classes (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white">
|
||||||
|
<FONT size="+1" CLASS="FrameHeadingFont">
|
||||||
|
<B>All Classes</B></FONT>
|
||||||
|
<BR>
|
||||||
|
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD NOWRAP><FONT CLASS="FrameItemFont"><A HREF="org/apache/log4j/rule/AbstractRule.html" title="class in org.apache.log4j.rule">AbstractRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/Action.html" title="interface in org.apache.log4j.rolling.helper"><I>Action</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/ActionBase.html" title="class in org.apache.log4j.rolling.helper">ActionBase</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/AndFilter.html" title="class in org.apache.log4j.filter">AndFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/AndRule.html" title="class in org.apache.log4j.rule">AndRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/BridgePatternConverter.html" title="class in org.apache.log4j.pattern">BridgePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/BridgePatternParser.html" title="class in org.apache.log4j.pattern">BridgePatternParser</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/CachedDateFormat.html" title="class in org.apache.log4j.pattern">CachedDateFormat</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/ClassNamePatternConverter.html" title="class in org.apache.log4j.pattern">ClassNamePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/ColorRule.html" title="class in org.apache.log4j.rule">ColorRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/CompositeAction.html" title="class in org.apache.log4j.rolling.helper">CompositeAction</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/DatePatternConverter.html" title="class in org.apache.log4j.pattern">DatePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter">DenyAllFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/extras/DOMConfigurator.html" title="class in org.apache.log4j.extras">DOMConfigurator</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/EnhancedPatternLayout.html" title="class in org.apache.log4j">EnhancedPatternLayout</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/EqualsRule.html" title="class in org.apache.log4j.rule">EqualsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/ExistsRule.html" title="class in org.apache.log4j.rule">ExistsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter">ExpressionFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/ExpressionRule.html" title="class in org.apache.log4j.rule">ExpressionRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/FileDatePatternConverter.html" title="class in org.apache.log4j.pattern">FileDatePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/FileLocationPatternConverter.html" title="class in org.apache.log4j.pattern">FileLocationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/FileRenameAction.html" title="class in org.apache.log4j.rolling.helper">FileRenameAction</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/FilterBasedTriggeringPolicy.html" title="class in org.apache.log4j.rolling">FilterBasedTriggeringPolicy</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/FixedWindowRollingPolicy.html" title="class in org.apache.log4j.rolling">FixedWindowRollingPolicy</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/FormattingInfo.html" title="class in org.apache.log4j.pattern">FormattingInfo</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/FullLocationPatternConverter.html" title="class in org.apache.log4j.pattern">FullLocationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/GZCompressAction.html" title="class in org.apache.log4j.rolling.helper">GZCompressAction</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/InequalityRule.html" title="class in org.apache.log4j.rule">InequalityRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/InFixToPostFix.html" title="class in org.apache.log4j.rule">InFixToPostFix</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/IntegerPatternConverter.html" title="class in org.apache.log4j.pattern">IntegerPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/LevelEqualsRule.html" title="class in org.apache.log4j.rule">LevelEqualsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/LevelInequalityRule.html" title="class in org.apache.log4j.rule">LevelInequalityRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter">LevelMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LevelPatternConverter.html" title="class in org.apache.log4j.pattern">LevelPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter">LevelRangeFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/LikeRule.html" title="class in org.apache.log4j.rule">LikeRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LineLocationPatternConverter.html" title="class in org.apache.log4j.pattern">LineLocationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LineSeparatorPatternConverter.html" title="class in org.apache.log4j.pattern">LineSeparatorPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LiteralPatternConverter.html" title="class in org.apache.log4j.pattern">LiteralPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter">LocationInfoFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LogEvent.html" title="class in org.apache.log4j.pattern">LogEvent</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter">LoggerMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LoggerPatternConverter.html" title="class in org.apache.log4j.pattern">LoggerPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html" title="class in org.apache.log4j.spi">LoggingEventFieldResolver</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/LoggingEventPatternConverter.html" title="class in org.apache.log4j.pattern">LoggingEventPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/LogMF.html" title="class in org.apache.log4j">LogMF</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/LogSF.html" title="class in org.apache.log4j">LogSF</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/helpers/MDCKeySetExtractor.html" title="class in org.apache.log4j.helpers">MDCKeySetExtractor</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/MessagePatternConverter.html" title="class in org.apache.log4j.pattern">MessagePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/MethodLocationPatternConverter.html" title="class in org.apache.log4j.pattern">MethodLocationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/NameAbbreviator.html" title="class in org.apache.log4j.pattern">NameAbbreviator</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/NamePatternConverter.html" title="class in org.apache.log4j.pattern">NamePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/NDCPatternConverter.html" title="class in org.apache.log4j.pattern">NDCPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/NotEqualsRule.html" title="class in org.apache.log4j.rule">NotEqualsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/NotRule.html" title="class in org.apache.log4j.rule">NotRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/OrRule.html" title="class in org.apache.log4j.rule">OrRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/PartialTextMatchRule.html" title="class in org.apache.log4j.rule">PartialTextMatchRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/PatternConverter.html" title="class in org.apache.log4j.pattern">PatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/PatternParser.html" title="class in org.apache.log4j.pattern">PatternParser</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/PropertiesPatternConverter.html" title="class in org.apache.log4j.pattern">PropertiesPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/RelativeTimePatternConverter.html" title="class in org.apache.log4j.pattern">RelativeTimePatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RollingFileAppender.html" title="class in org.apache.log4j.rolling">RollingFileAppender</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RollingPolicy.html" title="interface in org.apache.log4j.rolling"><I>RollingPolicy</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RollingPolicyBase.html" title="class in org.apache.log4j.rolling">RollingPolicyBase</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RolloverDescription.html" title="interface in org.apache.log4j.rolling"><I>RolloverDescription</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/RolloverDescriptionImpl.html" title="class in org.apache.log4j.rolling">RolloverDescriptionImpl</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/Rule.html" title="interface in org.apache.log4j.rule"><I>Rule</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/RuleFactory.html" title="class in org.apache.log4j.rule">RuleFactory</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/SequenceNumberPatternConverter.html" title="class in org.apache.log4j.pattern">SequenceNumberPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/SizeBasedTriggeringPolicy.html" title="class in org.apache.log4j.rolling">SizeBasedTriggeringPolicy</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/varia/SoundAppender.html" title="class in org.apache.log4j.varia">SoundAppender</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter">StringMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/ThreadPatternConverter.html" title="class in org.apache.log4j.pattern">ThreadPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/pattern/ThrowableInformationPatternConverter.html" title="class in org.apache.log4j.pattern">ThrowableInformationPatternConverter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/TimeBasedRollingPolicy.html" title="class in org.apache.log4j.rolling">TimeBasedRollingPolicy</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/filter/TimeFilter.html" title="class in org.apache.log4j.filter">TimeFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/TimestampEqualsRule.html" title="class in org.apache.log4j.rule">TimestampEqualsRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rule/TimestampInequalityRule.html" title="class in org.apache.log4j.rule">TimestampInequalityRule</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/TriggeringPolicy.html" title="interface in org.apache.log4j.rolling"><I>TriggeringPolicy</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/xml/UnrecognizedElementHandler.html" title="interface in org.apache.log4j.xml"><I>UnrecognizedElementHandler</I></A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html" title="class in org.apache.log4j.helpers">UtilLoggingLevel</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/xml/XSLTLayout.html" title="class in org.apache.log4j.xml">XSLTLayout</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="org/apache/log4j/rolling/helper/ZipCompressAction.html" title="class in org.apache.log4j.rolling.helper">ZipCompressAction</A>
|
||||||
|
<BR>
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
373
thirdparty/apache-log4j-extras-1.0/site/apidocs/constant-values.html
vendored
Normal file
373
thirdparty/apache-log4j-extras-1.0/site/apidocs/constant-values.html
vendored
Normal file
@ -0,0 +1,373 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Constant Field Values (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Constant Field Values (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="index.html?constant-values.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="constant-values.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H1>
|
||||||
|
Constant Field Values</H1>
|
||||||
|
</CENTER>
|
||||||
|
<HR SIZE="4" NOSHADE>
|
||||||
|
<B>Contents</B><UL>
|
||||||
|
<LI><A HREF="#org.apache">org.apache.*</A>
|
||||||
|
</UL>
|
||||||
|
|
||||||
|
<A NAME="org.apache"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left"><FONT SIZE="+2">
|
||||||
|
org.apache.*</FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="3">org.apache.log4j.<A HREF="org/apache/log4j/EnhancedPatternLayout.html" title="class in org.apache.log4j">EnhancedPatternLayout</A></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.EnhancedPatternLayout.BUF_SIZE"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>protected final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/EnhancedPatternLayout.html#BUF_SIZE">BUF_SIZE</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>256</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.EnhancedPatternLayout.DEFAULT_CONVERSION_PATTERN"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/EnhancedPatternLayout.html#DEFAULT_CONVERSION_PATTERN">DEFAULT_CONVERSION_PATTERN</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"%m%n"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.EnhancedPatternLayout.MAX_CAPACITY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>protected final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/EnhancedPatternLayout.html#MAX_CAPACITY">MAX_CAPACITY</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>1024</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.EnhancedPatternLayout.PATTERN_RULE_REGISTRY"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/EnhancedPatternLayout.html#PATTERN_RULE_REGISTRY">PATTERN_RULE_REGISTRY</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"PATTERN_RULE_REGISTRY"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.EnhancedPatternLayout.TTCC_CONVERSION_PATTERN"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/EnhancedPatternLayout.html#TTCC_CONVERSION_PATTERN">TTCC_CONVERSION_PATTERN</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"%r [%t] %p %c %x - %m%n"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="3">org.apache.log4j.helpers.<A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html" title="class in org.apache.log4j.helpers">UtilLoggingLevel</A></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.helpers.UtilLoggingLevel.CONFIG_INT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html#CONFIG_INT">CONFIG_INT</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>14000</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.helpers.UtilLoggingLevel.FINE_INT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html#FINE_INT">FINE_INT</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>13000</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.helpers.UtilLoggingLevel.FINER_INT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html#FINER_INT">FINER_INT</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>12000</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.helpers.UtilLoggingLevel.FINEST_INT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html#FINEST_INT">FINEST_INT</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>11000</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.helpers.UtilLoggingLevel.INFO_INT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html#INFO_INT">INFO_INT</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>15000</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.helpers.UtilLoggingLevel.SEVERE_INT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html#SEVERE_INT">SEVERE_INT</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>17000</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.helpers.UtilLoggingLevel.UNKNOWN_INT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html#UNKNOWN_INT">UNKNOWN_INT</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>10000</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.helpers.UtilLoggingLevel.WARNING_INT"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/helpers/UtilLoggingLevel.html#WARNING_INT">WARNING_INT</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>16000</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="3">org.apache.log4j.pattern.<A HREF="org/apache/log4j/pattern/CachedDateFormat.html" title="class in org.apache.log4j.pattern">CachedDateFormat</A></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.pattern.CachedDateFormat.NO_MILLISECONDS"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/pattern/CachedDateFormat.html#NO_MILLISECONDS">NO_MILLISECONDS</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>-2</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.pattern.CachedDateFormat.UNRECOGNIZED_MILLISECONDS"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final int</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/pattern/CachedDateFormat.html#UNRECOGNIZED_MILLISECONDS">UNRECOGNIZED_MILLISECONDS</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>-1</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="3">org.apache.log4j.spi.<A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html" title="class in org.apache.log4j.spi">LoggingEventFieldResolver</A></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.CLASS_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#CLASS_FIELD">CLASS_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"CLASS"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.EMPTY_STRING"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#EMPTY_STRING">EMPTY_STRING</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>""</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.EXCEPTION_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#EXCEPTION_FIELD">EXCEPTION_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"EXCEPTION"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.FILE_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#FILE_FIELD">FILE_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"FILE"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.LEVEL_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#LEVEL_FIELD">LEVEL_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"LEVEL"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.LINE_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#LINE_FIELD">LINE_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"LINE"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.LOGGER_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#LOGGER_FIELD">LOGGER_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"LOGGER"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.METHOD_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#METHOD_FIELD">METHOD_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"METHOD"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.MSG_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#MSG_FIELD">MSG_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"MSG"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.NDC_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#NDC_FIELD">NDC_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"NDC"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.PROP_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#PROP_FIELD">PROP_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"PROP."</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.THREAD_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#THREAD_FIELD">THREAD_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"THREAD"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<A NAME="org.apache.log4j.spi.LoggingEventFieldResolver.TIMESTAMP_FIELD"><!-- --></A><TD ALIGN="right"><FONT SIZE="-1">
|
||||||
|
<CODE>public static final java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD ALIGN="left"><CODE><A HREF="org/apache/log4j/spi/LoggingEventFieldResolver.html#TIMESTAMP_FIELD">TIMESTAMP_FIELD</A></CODE></TD>
|
||||||
|
<TD ALIGN="right"><CODE>"TIMESTAMP"</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="index.html?constant-values.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="constant-values.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
211
thirdparty/apache-log4j-extras-1.0/site/apidocs/deprecated-list.html
vendored
Normal file
211
thirdparty/apache-log4j-extras-1.0/site/apidocs/deprecated-list.html
vendored
Normal file
@ -0,0 +1,211 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Deprecated List (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Deprecated List (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Deprecated</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="index.html?deprecated-list.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="deprecated-list.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Deprecated API</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
<HR SIZE="4" NOSHADE>
|
||||||
|
<B>Contents</B><UL>
|
||||||
|
<LI><A HREF="#field">Deprecated Fields</A>
|
||||||
|
<LI><A HREF="#method">Deprecated Methods</A>
|
||||||
|
</UL>
|
||||||
|
|
||||||
|
<A NAME="field"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Deprecated Fields</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><A HREF="org/apache/log4j/EnhancedPatternLayout.html#BUF_SIZE">org.apache.log4j.EnhancedPatternLayout.BUF_SIZE</A>
|
||||||
|
<BR>
|
||||||
|
<I>since 1.3</I> </TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><A HREF="org/apache/log4j/pattern/LogEvent.html#categoryName">org.apache.log4j.pattern.LogEvent.categoryName</A>
|
||||||
|
<BR>
|
||||||
|
<I>This field will be marked as private in future
|
||||||
|
releases. Please do not access it directly. Use the <A HREF="org/apache/log4j/pattern/LogEvent.html#getLoggerName()"><CODE>LogEvent.getLoggerName()</CODE></A> method instead.</I> </TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><A HREF="org/apache/log4j/pattern/LogEvent.html#level">org.apache.log4j.pattern.LogEvent.level</A>
|
||||||
|
<BR>
|
||||||
|
<I>This field will be marked as private in future
|
||||||
|
releases. Please do not access it directly. Use the <A HREF="org/apache/log4j/pattern/LogEvent.html#getLevel()"><CODE>LogEvent.getLevel()</CODE></A> method instead.</I> </TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><A HREF="org/apache/log4j/EnhancedPatternLayout.html#MAX_CAPACITY">org.apache.log4j.EnhancedPatternLayout.MAX_CAPACITY</A>
|
||||||
|
<BR>
|
||||||
|
<I>since 1.3</I> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<A NAME="method"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Deprecated Methods</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><A HREF="org/apache/log4j/rolling/RollingPolicyBase.html#getActiveFileName()">org.apache.log4j.rolling.RollingPolicyBase.getActiveFileName()</A>
|
||||||
|
<BR>
|
||||||
|
<I>Duplicates FileAppender.file and should be removed</I> </TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><A HREF="org/apache/log4j/filter/DenyAllFilter.html#getOptionStrings()">org.apache.log4j.filter.DenyAllFilter.getOptionStrings()</A>
|
||||||
|
<BR>
|
||||||
|
<I>We now use JavaBeans introspection to configure
|
||||||
|
components. Options strings are no longer needed.</I> </TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><A HREF="org/apache/log4j/rolling/RollingPolicyBase.html#setActiveFileName(java.lang.String)">org.apache.log4j.rolling.RollingPolicyBase.setActiveFileName(String)</A>
|
||||||
|
<BR>
|
||||||
|
<I>Duplicates FileAppender.file and should be removed</I> </TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><A HREF="org/apache/log4j/filter/DenyAllFilter.html#setOption(java.lang.String, java.lang.String)">org.apache.log4j.filter.DenyAllFilter.setOption(String, String)</A>
|
||||||
|
<BR>
|
||||||
|
<I>Use the setter method for the option directly instead
|
||||||
|
of the generic <code>setOption</code> method.</I> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Deprecated</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="index.html?deprecated-list.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="deprecated-list.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
224
thirdparty/apache-log4j-extras-1.0/site/apidocs/help-doc.html
vendored
Normal file
224
thirdparty/apache-log4j-extras-1.0/site/apidocs/help-doc.html
vendored
Normal file
@ -0,0 +1,224 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
API Help (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="API Help (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Help</B></FONT> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="index.html?help-doc.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="help-doc.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H1>
|
||||||
|
How This API Document Is Organized</H1>
|
||||||
|
</CENTER>
|
||||||
|
This API (Application Programming Interface) document has pages corresponding to the items in the navigation bar, described as follows.<H3>
|
||||||
|
Overview</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
The <A HREF="overview-summary.html">Overview</A> page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Package</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
Each package has a page that contains a list of its classes and interfaces, with a summary for each. This page can contain four categories:<UL>
|
||||||
|
<LI>Interfaces (italic)<LI>Classes<LI>Enums<LI>Exceptions<LI>Errors<LI>Annotation Types</UL>
|
||||||
|
</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Class/Interface</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a class/interface description, summary tables, and detailed member descriptions:<UL>
|
||||||
|
<LI>Class inheritance diagram<LI>Direct Subclasses<LI>All Known Subinterfaces<LI>All Known Implementing Classes<LI>Class/interface declaration<LI>Class/interface description
|
||||||
|
<P>
|
||||||
|
<LI>Nested Class Summary<LI>Field Summary<LI>Constructor Summary<LI>Method Summary
|
||||||
|
<P>
|
||||||
|
<LI>Field Detail<LI>Constructor Detail<LI>Method Detail</UL>
|
||||||
|
Each summary entry contains the first sentence from the detailed description for that item. The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.</BLOCKQUOTE>
|
||||||
|
</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Annotation Type</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
Each annotation type has its own separate page with the following sections:<UL>
|
||||||
|
<LI>Annotation Type declaration<LI>Annotation Type description<LI>Required Element Summary<LI>Optional Element Summary<LI>Element Detail</UL>
|
||||||
|
</BLOCKQUOTE>
|
||||||
|
</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Enum</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
Each enum has its own separate page with the following sections:<UL>
|
||||||
|
<LI>Enum declaration<LI>Enum description<LI>Enum Constant Summary<LI>Enum Constant Detail</UL>
|
||||||
|
</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Use</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
Each documented package, class and interface has its own Use page. This page describes what packages, classes, methods, constructors and fields use any part of the given class or package. Given a class or interface A, its Use page includes subclasses of A, fields declared as A, methods that return A, and methods and constructors with parameters of type A. You can access this page by first going to the package, class or interface, then clicking on the "Use" link in the navigation bar.</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Tree (Class Hierarchy)</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
There is a <A HREF="overview-tree.html">Class Hierarchy</A> page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. The classes are organized by inheritance structure starting with <code>java.lang.Object</code>. The interfaces do not inherit from <code>java.lang.Object</code>.<UL>
|
||||||
|
<LI>When viewing the Overview page, clicking on "Tree" displays the hierarchy for all packages.<LI>When viewing a particular package, class or interface page, clicking "Tree" displays the hierarchy for only that package.</UL>
|
||||||
|
</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Deprecated API</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
The <A HREF="deprecated-list.html">Deprecated API</A> page lists all of the API that have been deprecated. A deprecated API is not recommended for use, generally due to improvements, and a replacement API is usually given. Deprecated APIs may be removed in future implementations.</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Index</H3>
|
||||||
|
<BLOCKQUOTE>
|
||||||
|
The <A HREF="index-all.html">Index</A> contains an alphabetic list of all classes, interfaces, constructors, methods, and fields.</BLOCKQUOTE>
|
||||||
|
<H3>
|
||||||
|
Prev/Next</H3>
|
||||||
|
These links take you to the next or previous class, interface, package, or related page.<H3>
|
||||||
|
Frames/No Frames</H3>
|
||||||
|
These links show and hide the HTML frames. All pages are available with or without frames.
|
||||||
|
<P>
|
||||||
|
<H3>
|
||||||
|
Serialized Form</H3>
|
||||||
|
Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to re-implementors, not to developers using the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See also" section of the class description.
|
||||||
|
<P>
|
||||||
|
<H3>
|
||||||
|
Constant Field Values</H3>
|
||||||
|
The <a href="constant-values.html">Constant Field Values</a> page lists the static final fields and their values.
|
||||||
|
<P>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
<EM>
|
||||||
|
This help file applies to API documentation generated using the standard doclet.</EM>
|
||||||
|
</FONT>
|
||||||
|
<BR>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Package</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="overview-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Help</B></FONT> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="index.html?help-doc.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="help-doc.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
2144
thirdparty/apache-log4j-extras-1.0/site/apidocs/index-all.html
vendored
Normal file
2144
thirdparty/apache-log4j-extras-1.0/site/apidocs/index-all.html
vendored
Normal file
File diff suppressed because it is too large
Load Diff
38
thirdparty/apache-log4j-extras-1.0/site/apidocs/index.html
vendored
Normal file
38
thirdparty/apache-log4j-extras-1.0/site/apidocs/index.html
vendored
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN" "http://www.w3.org/TR/html4/frameset.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Apache Extras Companion for log4j 1.2. 1.0 API
|
||||||
|
</TITLE>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
targetPage = "" + window.location.search;
|
||||||
|
if (targetPage != "" && targetPage != "undefined")
|
||||||
|
targetPage = targetPage.substring(1);
|
||||||
|
function loadFrames() {
|
||||||
|
if (targetPage != "" && targetPage != "undefined")
|
||||||
|
top.classFrame.location = top.targetPage;
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
</HEAD>
|
||||||
|
<FRAMESET cols="20%,80%" title="" onLoad="top.loadFrames()">
|
||||||
|
<FRAMESET rows="30%,70%" title="" onLoad="top.loadFrames()">
|
||||||
|
<FRAME src="overview-frame.html" name="packageListFrame" title="All Packages">
|
||||||
|
<FRAME src="allclasses-frame.html" name="packageFrame" title="All classes and interfaces (except non-static nested types)">
|
||||||
|
</FRAMESET>
|
||||||
|
<FRAME src="overview-summary.html" name="classFrame" title="Package, class and interface descriptions" scrolling="yes">
|
||||||
|
<NOFRAMES>
|
||||||
|
<H2>
|
||||||
|
Frame Alert</H2>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
This document is designed to be viewed using the frames feature. If you see this message, you are using a non-frame-capable web client.
|
||||||
|
<BR>
|
||||||
|
Link to<A HREF="overview-summary.html">Non-frame version.</A>
|
||||||
|
</NOFRAMES>
|
||||||
|
</FRAMESET>
|
||||||
|
</HTML>
|
||||||
16
thirdparty/apache-log4j-extras-1.0/site/apidocs/options
vendored
Normal file
16
thirdparty/apache-log4j-extras-1.0/site/apidocs/options
vendored
Normal file
@ -0,0 +1,16 @@
|
|||||||
|
-classpath '/home/ubuntu/apache-log4j-extras_rc5/target/checkout/target/classes:/home/ubuntu/.m2/repository/log4j/log4j/1.2.9/log4j-1.2.9.jar' -protected
|
||||||
|
-sourcepath
|
||||||
|
'/home/ubuntu/apache-log4j-extras_rc5/target/checkout/src/main/java'
|
||||||
|
-author
|
||||||
|
-bottom
|
||||||
|
'Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.'
|
||||||
|
-charset
|
||||||
|
'ISO-8859-1'
|
||||||
|
-d
|
||||||
|
'/home/ubuntu/apache-log4j-extras_rc5/target/checkout/target/site/apidocs'
|
||||||
|
-doctitle
|
||||||
|
'Apache Extras Companion for log4j 1.2. 1.0 API'
|
||||||
|
-use
|
||||||
|
-version
|
||||||
|
-windowtitle
|
||||||
|
'Apache Extras Companion for log4j 1.2. 1.0 API'
|
||||||
927
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/EnhancedPatternLayout.html
vendored
Normal file
927
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/EnhancedPatternLayout.html
vendored
Normal file
@ -0,0 +1,927 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
EnhancedPatternLayout (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="EnhancedPatternLayout (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/EnhancedPatternLayout.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV CLASS
|
||||||
|
<A HREF="../../../org/apache/log4j/LogMF.html" title="class in org.apache.log4j"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../index.html?org/apache/log4j/EnhancedPatternLayout.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="EnhancedPatternLayout.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j</FONT>
|
||||||
|
<BR>
|
||||||
|
Class EnhancedPatternLayout</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.Layout
|
||||||
|
<IMG SRC="../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.EnhancedPatternLayout</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>EnhancedPatternLayout</B><DT>extends org.apache.log4j.Layout</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<p>A flexible layout configurable with pattern string. The goal of this class
|
||||||
|
is to <A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#format(org.apache.log4j.spi.LoggingEvent)"><CODE>format</CODE></A> a <CODE>LoggingEvent</CODE> and return the results
|
||||||
|
in a <CODE>StringBuffer</CODE>. The format of the result depends on the
|
||||||
|
<em>conversion pattern</em>.
|
||||||
|
<p>
|
||||||
|
|
||||||
|
<p>The conversion pattern is closely related to the conversion
|
||||||
|
pattern of the printf function in C. A conversion pattern is
|
||||||
|
composed of literal text and format control expressions called
|
||||||
|
<em>conversion specifiers</em>.
|
||||||
|
|
||||||
|
<p><i>Note that you are free to insert any literal text within the
|
||||||
|
conversion pattern.</i>
|
||||||
|
</p>
|
||||||
|
|
||||||
|
<p>Each conversion specifier starts with a percent sign (%) and is
|
||||||
|
followed by optional <em>format modifiers</em> and a <em>conversion
|
||||||
|
character</em>. The conversion character specifies the type of
|
||||||
|
data, e.g. category, priority, date, thread name. The format
|
||||||
|
modifiers control such things as field width, padding, left and
|
||||||
|
right justification. The following is a simple example.
|
||||||
|
|
||||||
|
<p>Let the conversion pattern be <b>"%-5p [%t]: %m%n"</b> and assume
|
||||||
|
that the log4j environment was set to use a EnhancedPatternLayout. Then the
|
||||||
|
statements
|
||||||
|
<pre>
|
||||||
|
Category root = Category.getRoot();
|
||||||
|
root.debug("Message 1");
|
||||||
|
root.warn("Message 2");
|
||||||
|
</pre>
|
||||||
|
would yield the output
|
||||||
|
<pre>
|
||||||
|
DEBUG [main]: Message 1
|
||||||
|
WARN [main]: Message 2
|
||||||
|
</pre>
|
||||||
|
|
||||||
|
<p>Note that there is no explicit separator between text and
|
||||||
|
conversion specifiers. The pattern parser knows when it has reached
|
||||||
|
the end of a conversion specifier when it reads a conversion
|
||||||
|
character. In the example above the conversion specifier
|
||||||
|
<b>%-5p</b> means the priority of the logging event should be left
|
||||||
|
justified to a width of five characters.
|
||||||
|
|
||||||
|
The recognized conversion characters are
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<table border="1" CELLPADDING="8">
|
||||||
|
<th>Conversion Character</th>
|
||||||
|
<th>Effect</th>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>c</b></td>
|
||||||
|
|
||||||
|
<td>Used to output the category of the logging event. The
|
||||||
|
category conversion specifier can be optionally followed by
|
||||||
|
<em>precision specifier</em>, that is a decimal constant in
|
||||||
|
brackets.
|
||||||
|
|
||||||
|
<p>If a precision specifier is given, then only the corresponding
|
||||||
|
number of right most components of the category name will be
|
||||||
|
printed. By default the category name is printed in full.
|
||||||
|
|
||||||
|
<p>For example, for the category name "a.b.c" the pattern
|
||||||
|
<b>%c{2}</b> will output "b.c".
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>C</b></td>
|
||||||
|
|
||||||
|
<td>Used to output the fully qualified class name of the caller
|
||||||
|
issuing the logging request. This conversion specifier
|
||||||
|
can be optionally followed by <em>precision specifier</em>, that
|
||||||
|
is a decimal constant in brackets.
|
||||||
|
|
||||||
|
<p>If a precision specifier is given, then only the corresponding
|
||||||
|
number of right most components of the class name will be
|
||||||
|
printed. By default the class name is output in fully qualified form.
|
||||||
|
|
||||||
|
<p>For example, for the class name "org.apache.xyz.SomeClass", the
|
||||||
|
pattern <b>%C{1}</b> will output "SomeClass".
|
||||||
|
|
||||||
|
<p><b>WARNING</b> Generating the caller class information is
|
||||||
|
slow. Thus, it's use should be avoided unless execution speed is
|
||||||
|
not an issue.
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr> <td align=center><b>d</b></td> <td>Used to output the date of
|
||||||
|
the logging event. The date conversion specifier may be
|
||||||
|
followed by a set of braces containing a
|
||||||
|
date and time pattern strings <CODE>SimpleDateFormat</CODE>,
|
||||||
|
<em>ABSOLUTE</em>, <em>DATE</em> or <em>ISO8601</em>
|
||||||
|
and a set of braces containing a time zone id per
|
||||||
|
<CODE>TimeZone.getTimeZone(String)</CODE>.
|
||||||
|
For example, <b>%d{HH:mm:ss,SSS}</b>,
|
||||||
|
<b>%d{dd MMM yyyy HH:mm:ss,SSS}</b>,
|
||||||
|
<b>%d{DATE}</b> or <b>%d{HH:mm:ss}{GMT+0}</b>. If no date format specifier is given then
|
||||||
|
ISO8601 format is assumed.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>F</b></td>
|
||||||
|
|
||||||
|
<td>Used to output the file name where the logging request was
|
||||||
|
issued.
|
||||||
|
|
||||||
|
<p><b>WARNING</b> Generating caller location information is
|
||||||
|
extremely slow. Its use should be avoided unless execution speed
|
||||||
|
is not an issue.
|
||||||
|
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>l</b></td>
|
||||||
|
|
||||||
|
<td>Used to output location information of the caller which generated
|
||||||
|
the logging event.
|
||||||
|
|
||||||
|
<p>The location information depends on the JVM implementation but
|
||||||
|
usually consists of the fully qualified name of the calling
|
||||||
|
method followed by the callers source the file name and line
|
||||||
|
number between parentheses.
|
||||||
|
|
||||||
|
<p>The location information can be very useful. However, it's
|
||||||
|
generation is <em>extremely</em> slow. It's use should be avoided
|
||||||
|
unless execution speed is not an issue.
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>L</b></td>
|
||||||
|
|
||||||
|
<td>Used to output the line number from where the logging request
|
||||||
|
was issued.
|
||||||
|
|
||||||
|
<p><b>WARNING</b> Generating caller location information is
|
||||||
|
extremely slow. It's use should be avoided unless execution speed
|
||||||
|
is not an issue.
|
||||||
|
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>m</b></td>
|
||||||
|
<td>Used to output the application supplied message associated with
|
||||||
|
the logging event.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>M</b></td>
|
||||||
|
|
||||||
|
<td>Used to output the method name where the logging request was
|
||||||
|
issued.
|
||||||
|
|
||||||
|
<p><b>WARNING</b> Generating caller location information is
|
||||||
|
extremely slow. It's use should be avoided unless execution speed
|
||||||
|
is not an issue.
|
||||||
|
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>n</b></td>
|
||||||
|
|
||||||
|
<td>Outputs the platform dependent line separator character or
|
||||||
|
characters.
|
||||||
|
|
||||||
|
<p>This conversion character offers practically the same
|
||||||
|
performance as using non-portable line separator strings such as
|
||||||
|
"\n", or "\r\n". Thus, it is the preferred way of specifying a
|
||||||
|
line separator.
|
||||||
|
|
||||||
|
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>p</b></td>
|
||||||
|
<td>Used to output the priority of the logging event.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
|
||||||
|
<td align=center><b>r</b></td>
|
||||||
|
|
||||||
|
<td>Used to output the number of milliseconds elapsed since the construction
|
||||||
|
of the layout until the creation of the logging event.</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>t</b></td>
|
||||||
|
|
||||||
|
<td>Used to output the name of the thread that generated the
|
||||||
|
logging event.</td>
|
||||||
|
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
|
||||||
|
<td align=center><b>x</b></td>
|
||||||
|
|
||||||
|
<td>Used to output the NDC (nested diagnostic context) associated
|
||||||
|
with the thread that generated the logging event.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>X</b></td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
|
||||||
|
<p>Used to output the MDC (mapped diagnostic context) associated
|
||||||
|
with the thread that generated the logging event. The <b>X</b>
|
||||||
|
conversion character can be followed by the key for the
|
||||||
|
map placed between braces, as in <b>%X{clientNumber}</b> where
|
||||||
|
<code>clientNumber</code> is the key. The value in the MDC
|
||||||
|
corresponding to the key will be output. If no additional sub-option
|
||||||
|
is specified, then the entire contents of the MDC key value pair set
|
||||||
|
is output using a format {{key1,val1},{key2,val2}}</p>
|
||||||
|
|
||||||
|
<p>See <CODE>MDC</CODE> class for more details.
|
||||||
|
</p>
|
||||||
|
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>properties</b></td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<p>Used to output the Properties associated
|
||||||
|
with the logging event. The <b>properties</b>
|
||||||
|
conversion word can be followed by the key for the
|
||||||
|
map placed between braces, as in <b>%properties{application}</b> where
|
||||||
|
<code>application</code> is the key. The value in the Properties bundle
|
||||||
|
corresponding to the key will be output. If no additional sub-option
|
||||||
|
is specified, then the entire contents of the Properties key value pair set
|
||||||
|
is output using a format {{key1,val1},{key2,val2}}</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center><b>throwable</b></td>
|
||||||
|
|
||||||
|
<td>
|
||||||
|
<p>Used to output the Throwable trace that has been bound to the LoggingEvent, by
|
||||||
|
default this will output the full trace as one would normally find by a call to Throwable.printStackTrace().
|
||||||
|
The throwable conversion word can be followed by an option in the form <b>%throwable{short}</b>
|
||||||
|
which will only output the first line of the ThrowableInformation.</p>
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
|
||||||
|
<td align=center><b>%</b></td>
|
||||||
|
|
||||||
|
<td>The sequence %% outputs a single percent sign.
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
|
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<p>By default the relevant information is output as is. However,
|
||||||
|
with the aid of format modifiers it is possible to change the
|
||||||
|
minimum field width, the maximum field width and justification.
|
||||||
|
|
||||||
|
<p>The optional format modifier is placed between the percent sign
|
||||||
|
and the conversion character.
|
||||||
|
|
||||||
|
<p>The first optional format modifier is the <em>left justification
|
||||||
|
flag</em> which is just the minus (-) character. Then comes the
|
||||||
|
optional <em>minimum field width</em> modifier. This is a decimal
|
||||||
|
constant that represents the minimum number of characters to
|
||||||
|
output. If the data item requires fewer characters, it is padded on
|
||||||
|
either the left or the right until the minimum width is
|
||||||
|
reached. The default is to pad on the left (right justify) but you
|
||||||
|
can specify right padding with the left justification flag. The
|
||||||
|
padding character is space. If the data item is larger than the
|
||||||
|
minimum field width, the field is expanded to accommodate the
|
||||||
|
data. The value is never truncated.
|
||||||
|
|
||||||
|
<p>This behavior can be changed using the <em>maximum field
|
||||||
|
width</em> modifier which is designated by a period followed by a
|
||||||
|
decimal constant. If the data item is longer than the maximum
|
||||||
|
field, then the extra characters are removed from the
|
||||||
|
<em>beginning</em> of the data item and not from the end. For
|
||||||
|
example, it the maximum field width is eight and the data item is
|
||||||
|
ten characters long, then the first two characters of the data item
|
||||||
|
are dropped. This behavior deviates from the printf function in C
|
||||||
|
where truncation is done from the end.
|
||||||
|
|
||||||
|
<p>Below are various format modifier examples for the category
|
||||||
|
conversion specifier.
|
||||||
|
|
||||||
|
<p>
|
||||||
|
<TABLE BORDER=1 CELLPADDING=8>
|
||||||
|
<th>Format modifier
|
||||||
|
<th>left justify
|
||||||
|
<th>minimum width
|
||||||
|
<th>maximum width
|
||||||
|
<th>comment
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center>%20c</td>
|
||||||
|
<td align=center>false</td>
|
||||||
|
<td align=center>20</td>
|
||||||
|
<td align=center>none</td>
|
||||||
|
|
||||||
|
<td>Left pad with spaces if the category name is less than 20
|
||||||
|
characters long.
|
||||||
|
|
||||||
|
<tr> <td align=center>%-20c</td> <td align=center>true</td> <td
|
||||||
|
align=center>20</td> <td align=center>none</td> <td>Right pad with
|
||||||
|
spaces if the category name is less than 20 characters long.
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center>%.30c</td>
|
||||||
|
<td align=center>NA</td>
|
||||||
|
<td align=center>none</td>
|
||||||
|
<td align=center>30</td>
|
||||||
|
|
||||||
|
<td>Truncate from the beginning if the category name is longer than 30
|
||||||
|
characters.
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center>%20.30c</td>
|
||||||
|
<td align=center>false</td>
|
||||||
|
<td align=center>20</td>
|
||||||
|
<td align=center>30</td>
|
||||||
|
|
||||||
|
<td>Left pad with spaces if the category name is shorter than 20
|
||||||
|
characters. However, if category name is longer than 30 characters,
|
||||||
|
then truncate from the beginning.
|
||||||
|
|
||||||
|
<tr>
|
||||||
|
<td align=center>%-20.30c</td>
|
||||||
|
<td align=center>true</td>
|
||||||
|
<td align=center>20</td>
|
||||||
|
<td align=center>30</td>
|
||||||
|
|
||||||
|
<td>Right pad with spaces if the category name is shorter than 20
|
||||||
|
characters. However, if category name is longer than 30 characters,
|
||||||
|
then truncate from the beginning.
|
||||||
|
|
||||||
|
</table>
|
||||||
|
|
||||||
|
<p>Below are some examples of conversion patterns.
|
||||||
|
|
||||||
|
<dl>
|
||||||
|
|
||||||
|
<p><dt><b>%r [%t] %-5p %c %x - %m%n</b>
|
||||||
|
<p><dd>This is essentially the TTCC layout.
|
||||||
|
|
||||||
|
<p><dt><b>%-6r [%15.15t] %-5p %30.30c %x - %m%n</b>
|
||||||
|
|
||||||
|
<p><dd>Similar to the TTCC layout except that the relative time is
|
||||||
|
right padded if less than 6 digits, thread name is right padded if
|
||||||
|
less than 15 characters and truncated if longer and the category
|
||||||
|
name is left padded if shorter than 30 characters and truncated if
|
||||||
|
longer.
|
||||||
|
|
||||||
|
</dl>
|
||||||
|
|
||||||
|
<p>The above text is largely inspired from Peter A. Darnell and
|
||||||
|
Philip E. Margolis' highly recommended book "C -- a Software
|
||||||
|
Engineering Approach", ISBN 0-387-97389-3.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Since:</B></DT>
|
||||||
|
<DD>0.8.2</DD>
|
||||||
|
<DT><B>Author:</B></DT>
|
||||||
|
<DD><a href="mailto:cakalijp@Maritz.com">James P. Cakalic</a>, Ceki Gülcü</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE>protected int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#BUF_SIZE">BUF_SIZE</A></B></CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
<B>Deprecated.</B> <I>since 1.3</I></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE>static java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#DEFAULT_CONVERSION_PATTERN">DEFAULT_CONVERSION_PATTERN</A></B></CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Default pattern string for log output.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE>protected int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#MAX_CAPACITY">MAX_CAPACITY</A></B></CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
<B>Deprecated.</B> <I>since 1.3</I></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE>static java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#PATTERN_RULE_REGISTRY">PATTERN_RULE_REGISTRY</A></B></CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Customized pattern conversion rules are stored under this key in the
|
||||||
|
<CODE>LoggerRepository</CODE> object store.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE>static java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#TTCC_CONVERSION_PATTERN">TTCC_CONVERSION_PATTERN</A></B></CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
A conversion pattern equivalent to the TTCCCLayout.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.Layout"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.Layout</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>LINE_SEP, LINE_SEP_LEN</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#EnhancedPatternLayout()">EnhancedPatternLayout</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Constructs a EnhancedPatternLayout using the DEFAULT_LAYOUT_PATTERN.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#EnhancedPatternLayout(java.lang.String)">EnhancedPatternLayout</A></B>(java.lang.String pattern)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Constructs a EnhancedPatternLayout using the supplied conversion pattern.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#activateOptions()">activateOptions</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Activates the conversion pattern.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE>protected org.apache.log4j.helpers.PatternParser</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#createPatternParser(java.lang.String)">createPatternParser</A></B>(java.lang.String pattern)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Returns PatternParser used to parse the conversion string.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#format(org.apache.log4j.spi.LoggingEvent)">format</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Formats a logging event to a writer.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#getConversionPattern()">getConversionPattern</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Returns the value of the <b>ConversionPattern</b> option.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#ignoresThrowable()">ignoresThrowable</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Will return false if any of the conversion specifiers in the pattern
|
||||||
|
handles <CODE>Exceptions</CODE>.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../org/apache/log4j/EnhancedPatternLayout.html#setConversionPattern(java.lang.String)">setConversionPattern</A></B>(java.lang.String conversionPattern)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set the <b>ConversionPattern</b> option.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_org.apache.log4j.Layout"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class org.apache.log4j.Layout</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>getContentType, getFooter, getHeader</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ============ FIELD DETAIL =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Field Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="DEFAULT_CONVERSION_PATTERN"><!-- --></A><H3>
|
||||||
|
DEFAULT_CONVERSION_PATTERN</H3>
|
||||||
|
<PRE>
|
||||||
|
public static final java.lang.String <B>DEFAULT_CONVERSION_PATTERN</B></PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Default pattern string for log output. Currently set to the
|
||||||
|
string <b>"%m%n"</b> which just prints the application supplied
|
||||||
|
message.
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.apache.log4j.EnhancedPatternLayout.DEFAULT_CONVERSION_PATTERN">Constant Field Values</A></DL>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="TTCC_CONVERSION_PATTERN"><!-- --></A><H3>
|
||||||
|
TTCC_CONVERSION_PATTERN</H3>
|
||||||
|
<PRE>
|
||||||
|
public static final java.lang.String <B>TTCC_CONVERSION_PATTERN</B></PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>A conversion pattern equivalent to the TTCCCLayout.
|
||||||
|
Current value is <b>%r [%t] %p %c %x - %m%n</b>.
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.apache.log4j.EnhancedPatternLayout.TTCC_CONVERSION_PATTERN">Constant Field Values</A></DL>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="BUF_SIZE"><!-- --></A><H3>
|
||||||
|
BUF_SIZE</H3>
|
||||||
|
<PRE>
|
||||||
|
protected final int <B>BUF_SIZE</B></PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><B>Deprecated.</B> <I>since 1.3</I><DD>Initial size of internal buffer, no longer used.
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.apache.log4j.EnhancedPatternLayout.BUF_SIZE">Constant Field Values</A></DL>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="MAX_CAPACITY"><!-- --></A><H3>
|
||||||
|
MAX_CAPACITY</H3>
|
||||||
|
<PRE>
|
||||||
|
protected final int <B>MAX_CAPACITY</B></PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><B>Deprecated.</B> <I>since 1.3</I><DD>Maximum capacity of internal buffer, no longer used.
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.apache.log4j.EnhancedPatternLayout.MAX_CAPACITY">Constant Field Values</A></DL>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="PATTERN_RULE_REGISTRY"><!-- --></A><H3>
|
||||||
|
PATTERN_RULE_REGISTRY</H3>
|
||||||
|
<PRE>
|
||||||
|
public static final java.lang.String <B>PATTERN_RULE_REGISTRY</B></PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Customized pattern conversion rules are stored under this key in the
|
||||||
|
<CODE>LoggerRepository</CODE> object store.
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>See Also:</B><DD><A HREF="../../../constant-values.html#org.apache.log4j.EnhancedPatternLayout.PATTERN_RULE_REGISTRY">Constant Field Values</A></DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="EnhancedPatternLayout()"><!-- --></A><H3>
|
||||||
|
EnhancedPatternLayout</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>EnhancedPatternLayout</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Constructs a EnhancedPatternLayout using the DEFAULT_LAYOUT_PATTERN.
|
||||||
|
|
||||||
|
The default pattern just produces the application supplied message.
|
||||||
|
<P>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="EnhancedPatternLayout(java.lang.String)"><!-- --></A><H3>
|
||||||
|
EnhancedPatternLayout</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>EnhancedPatternLayout</B>(java.lang.String pattern)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Constructs a EnhancedPatternLayout using the supplied conversion pattern.
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>pattern</CODE> - conversion pattern.</DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="setConversionPattern(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setConversionPattern</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setConversionPattern</B>(java.lang.String conversionPattern)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set the <b>ConversionPattern</b> option. This is the string which
|
||||||
|
controls formatting and consists of a mix of literal content and
|
||||||
|
conversion specifiers.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>conversionPattern</CODE> - conversion pattern.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getConversionPattern()"><!-- --></A><H3>
|
||||||
|
getConversionPattern</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.lang.String <B>getConversionPattern</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Returns the value of the <b>ConversionPattern</b> option.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>conversion pattern.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="createPatternParser(java.lang.String)"><!-- --></A><H3>
|
||||||
|
createPatternParser</H3>
|
||||||
|
<PRE>
|
||||||
|
protected org.apache.log4j.helpers.PatternParser <B>createPatternParser</B>(java.lang.String pattern)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Returns PatternParser used to parse the conversion string. Subclasses
|
||||||
|
may override this to return a subclass of PatternParser which recognize
|
||||||
|
custom conversion characters.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Since:</B></DT>
|
||||||
|
<DD>0.9.0</DD>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="activateOptions()"><!-- --></A><H3>
|
||||||
|
activateOptions</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>activateOptions</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Activates the conversion pattern. Do not forget to call this method after
|
||||||
|
you change the parameters of the EnhancedPatternLayout instance.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>activateOptions</CODE> in interface <CODE>org.apache.log4j.spi.OptionHandler</CODE><DT><B>Specified by:</B><DD><CODE>activateOptions</CODE> in class <CODE>org.apache.log4j.Layout</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="format(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
format</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.lang.String <B>format</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Formats a logging event to a writer.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>format</CODE> in class <CODE>org.apache.log4j.Layout</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>event</CODE> - logging event to be formatted.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="ignoresThrowable()"><!-- --></A><H3>
|
||||||
|
ignoresThrowable</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>ignoresThrowable</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Will return false if any of the conversion specifiers in the pattern
|
||||||
|
handles <CODE>Exceptions</CODE>.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>ignoresThrowable</CODE> in class <CODE>org.apache.log4j.Layout</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>true if the pattern formats any information from exceptions.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/EnhancedPatternLayout.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV CLASS
|
||||||
|
<A HREF="../../../org/apache/log4j/LogMF.html" title="class in org.apache.log4j"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../index.html?org/apache/log4j/EnhancedPatternLayout.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="EnhancedPatternLayout.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: <A HREF="#field_detail">FIELD</A> | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
2580
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/LogMF.html
vendored
Normal file
2580
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/LogMF.html
vendored
Normal file
File diff suppressed because it is too large
Load Diff
2581
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/LogSF.html
vendored
Normal file
2581
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/LogSF.html
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.EnhancedPatternLayout (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.EnhancedPatternLayout (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../org/apache/log4j/EnhancedPatternLayout.html" title="class in org.apache.log4j"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j//class-useEnhancedPatternLayout.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="EnhancedPatternLayout.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.EnhancedPatternLayout</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.EnhancedPatternLayout
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../org/apache/log4j/EnhancedPatternLayout.html" title="class in org.apache.log4j"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j//class-useEnhancedPatternLayout.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="EnhancedPatternLayout.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/class-use/LogMF.html
vendored
Normal file
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/class-use/LogMF.html
vendored
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.LogMF (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.LogMF (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../org/apache/log4j/LogMF.html" title="class in org.apache.log4j"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j//class-useLogMF.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LogMF.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.LogMF</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.LogMF
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../org/apache/log4j/LogMF.html" title="class in org.apache.log4j"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j//class-useLogMF.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LogMF.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/class-use/LogSF.html
vendored
Normal file
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/class-use/LogSF.html
vendored
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.LogSF (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.LogSF (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../org/apache/log4j/LogSF.html" title="class in org.apache.log4j"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j//class-useLogSF.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LogSF.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.LogSF</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.LogSF
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../org/apache/log4j/LogSF.html" title="class in org.apache.log4j"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j//class-useLogSF.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LogSF.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
1044
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/DOMConfigurator.html
vendored
Normal file
1044
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/DOMConfigurator.html
vendored
Normal file
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.extras.DOMConfigurator (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.extras.DOMConfigurator (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/extras/DOMConfigurator.html" title="class in org.apache.log4j.extras"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/extras//class-useDOMConfigurator.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="DOMConfigurator.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.extras.DOMConfigurator</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.extras.DOMConfigurator
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/extras/DOMConfigurator.html" title="class in org.apache.log4j.extras"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/extras//class-useDOMConfigurator.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="DOMConfigurator.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
33
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/package-frame.html
vendored
Normal file
33
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/package-frame.html
vendored
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
org.apache.log4j.extras (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white">
|
||||||
|
<FONT size="+1" CLASS="FrameTitleFont">
|
||||||
|
<A HREF="../../../../org/apache/log4j/extras/package-summary.html" target="classFrame">org.apache.log4j.extras</A></FONT>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
|
||||||
|
Classes</FONT>
|
||||||
|
<FONT CLASS="FrameItemFont">
|
||||||
|
<BR>
|
||||||
|
<A HREF="DOMConfigurator.html" title="class in org.apache.log4j.extras" target="classFrame">DOMConfigurator</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
160
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/package-summary.html
vendored
Normal file
160
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/package-summary.html
vendored
Normal file
@ -0,0 +1,160 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
org.apache.log4j.extras (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="org.apache.log4j.extras (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/package-summary.html"><B>PREV PACKAGE</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/extras/package-summary.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<H2>
|
||||||
|
Package org.apache.log4j.extras
|
||||||
|
</H2>
|
||||||
|
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Class Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/extras/DOMConfigurator.html" title="class in org.apache.log4j.extras">DOMConfigurator</A></B></TD>
|
||||||
|
<TD>This is a duplicate (with minor modifications)
|
||||||
|
of the log4j 1.2.15 DOMConfigurator
|
||||||
|
renamed for use with earlier versions of log4j.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/package-summary.html"><B>PREV PACKAGE</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/extras/package-summary.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
155
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/package-tree.html
vendored
Normal file
155
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/package-tree.html
vendored
Normal file
@ -0,0 +1,155 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
org.apache.log4j.extras Class Hierarchy (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="org.apache.log4j.extras Class Hierarchy (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/package-tree.html"><B>PREV</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/package-tree.html"><B>NEXT</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/extras/package-tree.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
Hierarchy For Package org.apache.log4j.extras
|
||||||
|
</H2>
|
||||||
|
</CENTER>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../overview-tree.html">All Packages</A></DL>
|
||||||
|
<HR>
|
||||||
|
<H2>
|
||||||
|
Class Hierarchy
|
||||||
|
</H2>
|
||||||
|
<UL>
|
||||||
|
<LI TYPE="circle">java.lang.Object<UL>
|
||||||
|
<LI TYPE="circle">org.apache.log4j.extras.<A HREF="../../../../org/apache/log4j/extras/DOMConfigurator.html" title="class in org.apache.log4j.extras"><B>DOMConfigurator</B></A> (implements org.apache.log4j.spi.Configurator)
|
||||||
|
</UL>
|
||||||
|
</UL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/package-tree.html"><B>PREV</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/package-tree.html"><B>NEXT</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/extras/package-tree.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/package-use.html
vendored
Normal file
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/extras/package-use.html
vendored
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Package org.apache.log4j.extras (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Package org.apache.log4j.extras (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/extras/package-use.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Package<br>org.apache.log4j.extras</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.extras
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/extras/package-use.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
435
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/AndFilter.html
vendored
Normal file
435
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/AndFilter.html
vendored
Normal file
@ -0,0 +1,435 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
AndFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="AndFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AndFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV CLASS
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/AndFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="AndFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class AndFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.AndFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler, <A HREF="../../../../org/apache/log4j/xml/UnrecognizedElementHandler.html" title="interface in org.apache.log4j.xml">UnrecognizedElementHandler</A></DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>AndFilter</B><DT>extends org.apache.log4j.spi.Filter<DT>implements <A HREF="../../../../org/apache/log4j/xml/UnrecognizedElementHandler.html" title="interface in org.apache.log4j.xml">UnrecognizedElementHandler</A></DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
A filter that 'and's the results of any number of contained filters together.
|
||||||
|
|
||||||
|
For the filter to process events, all contained filters must return Filter.ACCEPT.
|
||||||
|
|
||||||
|
If the contained filters do not return Filter.ACCEPT, Filter.NEUTRAL is returned.
|
||||||
|
|
||||||
|
If acceptOnMatch is set to true, Filter.ACCEPT is returned.
|
||||||
|
If acceptOnMatch is set to false, Filter.DENY is returned.
|
||||||
|
|
||||||
|
Here is an example config that will accept only events that contain BOTH
|
||||||
|
a DEBUG level AND 'test' in the message:
|
||||||
|
|
||||||
|
<appender name="STDOUT" class="org.apache.log4j.ConsoleAppender">
|
||||||
|
<filter class="org.apache.log4j.filter.AndFilter">
|
||||||
|
<filter class="org.apache.log4j.filter.LevelMatchFilter">
|
||||||
|
<param name="levelToMatch" value="DEBUG" />
|
||||||
|
<param name="acceptOnMatch" value="true" />
|
||||||
|
</filter>
|
||||||
|
<filter class="org.apache.log4j.filter.StringMatchFilter">
|
||||||
|
<param name="stringToMatch" value="test" />
|
||||||
|
<param name="acceptOnMatch" value="true" />
|
||||||
|
</filter>
|
||||||
|
<param name="acceptOnMatch" value="false"/>
|
||||||
|
</filter>
|
||||||
|
<filter class="org.apache.log4j.filter.DenyAllFilter"/>
|
||||||
|
<layout class="org.apache.log4j.SimpleLayout"/>
|
||||||
|
</appender>
|
||||||
|
|
||||||
|
To accept all events EXCEPT those events that contain a
|
||||||
|
DEBUG level and 'test' in the message:
|
||||||
|
change the AndFilter's acceptOnMatch param to false and remove the DenyAllFilter
|
||||||
|
|
||||||
|
NOTE: If you are defining a filter that is only relying on logging event content
|
||||||
|
(no external or filter-managed state), you could opt instead
|
||||||
|
to use an ExpressionFilter with one of the following expressions:
|
||||||
|
|
||||||
|
LEVEL == DEBUG && MSG ~= 'test'
|
||||||
|
or
|
||||||
|
! ( LEVEL == DEBUG && MSG ~= 'test' )
|
||||||
|
|
||||||
|
XML configuration of this filter requires use of either log4j 1.2.15 or later or
|
||||||
|
org.apache.log4j.rolling.DOMConfigurator.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Author:</B></DT>
|
||||||
|
<DD>Scott Deboy sdeboy@apache.org</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/AndFilter.html#AndFilter()">AndFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/AndFilter.html#activateOptions()">activateOptions</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/AndFilter.html#addFilter(org.apache.log4j.spi.Filter)">addFilter</A></B>(org.apache.log4j.spi.Filter filter)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/AndFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
If this event does not already contain location information,
|
||||||
|
evaluate the event against the expression.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/AndFilter.html#parseUnrecognizedElement(org.w3c.dom.Element, java.util.Properties)">parseUnrecognizedElement</A></B>(org.w3c.dom.Element element,
|
||||||
|
java.util.Properties props)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Called to inform a configured object when
|
||||||
|
an unrecognized child element is encountered.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/AndFilter.html#setAcceptOnMatch(boolean)">setAcceptOnMatch</A></B>(boolean acceptOnMatch)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="AndFilter()"><!-- --></A><H3>
|
||||||
|
AndFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>AndFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="activateOptions()"><!-- --></A><H3>
|
||||||
|
activateOptions</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>activateOptions</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>activateOptions</CODE> in interface <CODE>org.apache.log4j.spi.OptionHandler</CODE><DT><B>Overrides:</B><DD><CODE>activateOptions</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="addFilter(org.apache.log4j.spi.Filter)"><!-- --></A><H3>
|
||||||
|
addFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>addFilter</B>(org.apache.log4j.spi.Filter filter)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setAcceptOnMatch(boolean)"><!-- --></A><H3>
|
||||||
|
setAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setAcceptOnMatch</B>(boolean acceptOnMatch)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>If this event does not already contain location information,
|
||||||
|
evaluate the event against the expression.
|
||||||
|
|
||||||
|
If the expression evaluates to true, generate a LocationInfo instance
|
||||||
|
by creating an exception and set this LocationInfo on the event.
|
||||||
|
|
||||||
|
Returns <CODE>Filter.NEUTRAL</CODE>
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="parseUnrecognizedElement(org.w3c.dom.Element, java.util.Properties)"><!-- --></A><H3>
|
||||||
|
parseUnrecognizedElement</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>parseUnrecognizedElement</B>(org.w3c.dom.Element element,
|
||||||
|
java.util.Properties props)
|
||||||
|
throws java.lang.Exception</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Called to inform a configured object when
|
||||||
|
an unrecognized child element is encountered.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE><A HREF="../../../../org/apache/log4j/xml/UnrecognizedElementHandler.html#parseUnrecognizedElement(org.w3c.dom.Element, java.util.Properties)">parseUnrecognizedElement</A></CODE> in interface <CODE><A HREF="../../../../org/apache/log4j/xml/UnrecognizedElementHandler.html" title="interface in org.apache.log4j.xml">UnrecognizedElementHandler</A></CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>element</CODE> - element, may not be null.<DD><CODE>props</CODE> - properties in force, may be null.
|
||||||
|
<DT><B>Returns:</B><DD>true if configured object recognized the element
|
||||||
|
<DT><B>Throws:</B>
|
||||||
|
<DD><CODE>java.lang.Exception</CODE> - throw an exception to prevent activation
|
||||||
|
of the configured object.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/AndFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV CLASS
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/AndFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="AndFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
359
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/DenyAllFilter.html
vendored
Normal file
359
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/DenyAllFilter.html
vendored
Normal file
@ -0,0 +1,359 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
DenyAllFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="DenyAllFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/DenyAllFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/AndFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/DenyAllFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="DenyAllFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class DenyAllFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.DenyAllFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>DenyAllFilter</B><DT>extends org.apache.log4j.spi.Filter</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
This filter drops all logging events.
|
||||||
|
|
||||||
|
<p>You can add this filter to the end of a filter chain to
|
||||||
|
switch from the default "accept all unless instructed otherwise"
|
||||||
|
filtering behaviour to a "deny all unless instructed otherwise"
|
||||||
|
behaviour.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Since:</B></DT>
|
||||||
|
<DD>0.9.0</DD>
|
||||||
|
<DT><B>Author:</B></DT>
|
||||||
|
<DD>Ceki Gülcü</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html#DenyAllFilter()">DenyAllFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Always returns the integer constant <CODE>Filter.DENY</CODE>
|
||||||
|
regardless of the <CODE>LoggingEvent</CODE> parameter.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.lang.String[]</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html#getOptionStrings()">getOptionStrings</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
<B>Deprecated.</B> <I>We now use JavaBeans introspection to configure
|
||||||
|
components. Options strings are no longer needed.</I></TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html#setOption(java.lang.String, java.lang.String)">setOption</A></B>(java.lang.String key,
|
||||||
|
java.lang.String value)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
<B>Deprecated.</B> <I>Use the setter method for the option directly instead
|
||||||
|
of the generic <code>setOption</code> method.</I></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>activateOptions</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="DenyAllFilter()"><!-- --></A><H3>
|
||||||
|
DenyAllFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>DenyAllFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="getOptionStrings()"><!-- --></A><H3>
|
||||||
|
getOptionStrings</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.lang.String[] <B>getOptionStrings</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><B>Deprecated.</B> <I>We now use JavaBeans introspection to configure
|
||||||
|
components. Options strings are no longer needed.</I>
|
||||||
|
<P>
|
||||||
|
<DD>Returns <code>null</code> as there are no options.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setOption(java.lang.String, java.lang.String)"><!-- --></A><H3>
|
||||||
|
setOption</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setOption</B>(java.lang.String key,
|
||||||
|
java.lang.String value)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><B>Deprecated.</B> <I>Use the setter method for the option directly instead
|
||||||
|
of the generic <code>setOption</code> method.</I>
|
||||||
|
<P>
|
||||||
|
<DD>No options to set.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Always returns the integer constant <CODE>Filter.DENY</CODE>
|
||||||
|
regardless of the <CODE>LoggingEvent</CODE> parameter.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>event</CODE> - The LoggingEvent to filter.
|
||||||
|
<DT><B>Returns:</B><DD>Always returns <CODE>Filter.DENY</CODE>.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/DenyAllFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/AndFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/DenyAllFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="DenyAllFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
484
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/ExpressionFilter.html
vendored
Normal file
484
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/ExpressionFilter.html
vendored
Normal file
@ -0,0 +1,484 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
ExpressionFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="ExpressionFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ExpressionFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/ExpressionFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="ExpressionFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class ExpressionFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.ExpressionFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>ExpressionFilter</B><DT>extends org.apache.log4j.spi.Filter</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
A filter supporting complex expressions - supports both infix and postfix
|
||||||
|
expressions (infix expressions must first be converted to postfix prior
|
||||||
|
to processing).
|
||||||
|
<p/>
|
||||||
|
<p>See <code>org.apache.log4j.chainsaw.LoggingEventFieldResolver.java</code>
|
||||||
|
for the correct names for logging event fields
|
||||||
|
used when building expressions.
|
||||||
|
<p/>
|
||||||
|
<p>See <code>org.apache.log4j.chainsaw.rule</code> package
|
||||||
|
for a list of available
|
||||||
|
rules which can be applied using the expression syntax.
|
||||||
|
<p/>
|
||||||
|
<p>See <code>org.apache.log4j.chainsaw.RuleFactory</code> for the symbols
|
||||||
|
used to activate the corresponding rules.
|
||||||
|
<p/>
|
||||||
|
NOTE: Grouping using parentheses is supported -
|
||||||
|
all tokens must be separated by spaces, and
|
||||||
|
operands which contain spaces are not yet supported.
|
||||||
|
<p/>
|
||||||
|
Example:
|
||||||
|
<p/>
|
||||||
|
In order to build a filter that displays all messages with
|
||||||
|
infomsg-45 or infomsg-44 in the message,
|
||||||
|
as well as all messages with a level of WARN or higher,
|
||||||
|
build an expression using
|
||||||
|
the LikeRule (supports java.util.regex based regular expressions) and the InequalityRule.
|
||||||
|
<b> ( MSG LIKE infomsg-4[4,5] ) && ( LEVEL >= WARN ) </b>
|
||||||
|
<p/>
|
||||||
|
Three options are required:
|
||||||
|
<b>Expression</b> - the expression to match
|
||||||
|
<b>ConvertInFixToPostFix</b> - convert from infix to posfix (default true)
|
||||||
|
<b>AcceptOnMatch</b> - true or false (default true)
|
||||||
|
<p/>
|
||||||
|
Meaning of <b>AcceptToMatch</b>:
|
||||||
|
If there is a match between the value of the
|
||||||
|
Expression option and the <CODE>LoggingEvent</CODE> and AcceptOnMatch is true,
|
||||||
|
the <A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#decide(org.apache.log4j.spi.LoggingEvent)"><CODE>decide(org.apache.log4j.spi.LoggingEvent)</CODE></A> method returns <CODE>Filter.ACCEPT</CODE>.
|
||||||
|
<p/>
|
||||||
|
If there is a match between the value of the
|
||||||
|
Expression option and the <CODE>LoggingEvent</CODE> and AcceptOnMatch is false,
|
||||||
|
<CODE>Filter.DENY</CODE> is returned.
|
||||||
|
<p/>
|
||||||
|
If there is no match, <CODE>Filter.NEUTRAL</CODE> is returned.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Author:</B></DT>
|
||||||
|
<DD>Scott Deboy sdeboy@apache.org</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#ExpressionFilter()">ExpressionFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#activateOptions()">activateOptions</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Determines if event matches the filter.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#getAcceptOnMatch()">getAcceptOnMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Gets whether filter accepts matching or non-matching events.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#getConvertInFixToPostFix()">getConvertInFixToPostFix</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Get in-fix to post-fix conversion setting.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#getExpression()">getExpression</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Get expression.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#setAcceptOnMatch(boolean)">setAcceptOnMatch</A></B>(boolean newValue)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set whether filter should accept events if they match the expression.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#setConvertInFixToPostFix(boolean)">setConvertInFixToPostFix</A></B>(boolean newValue)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set convert in-fix to post-fix.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html#setExpression(java.lang.String)">setExpression</A></B>(java.lang.String exp)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set exp.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="ExpressionFilter()"><!-- --></A><H3>
|
||||||
|
ExpressionFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>ExpressionFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="activateOptions()"><!-- --></A><H3>
|
||||||
|
activateOptions</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>activateOptions</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>activateOptions</CODE> in interface <CODE>org.apache.log4j.spi.OptionHandler</CODE><DT><B>Overrides:</B><DD><CODE>activateOptions</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setExpression(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setExpression</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setExpression</B>(java.lang.String exp)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set exp.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>exp</CODE> - exp.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getExpression()"><!-- --></A><H3>
|
||||||
|
getExpression</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.lang.String <B>getExpression</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Get expression.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>expression.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setConvertInFixToPostFix(boolean)"><!-- --></A><H3>
|
||||||
|
setConvertInFixToPostFix</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setConvertInFixToPostFix</B>(boolean newValue)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set convert in-fix to post-fix.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>newValue</CODE> - new value.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getConvertInFixToPostFix()"><!-- --></A><H3>
|
||||||
|
getConvertInFixToPostFix</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>getConvertInFixToPostFix</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Get in-fix to post-fix conversion setting.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>true if in-fix expressions are converted to post-fix.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setAcceptOnMatch(boolean)"><!-- --></A><H3>
|
||||||
|
setAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setAcceptOnMatch</B>(boolean newValue)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set whether filter should accept events if they match the expression.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>newValue</CODE> - if true, accept on match.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getAcceptOnMatch()"><!-- --></A><H3>
|
||||||
|
getAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>getAcceptOnMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Gets whether filter accepts matching or non-matching events.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>if true, accept matching events.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Determines if event matches the filter.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>event</CODE> - logging event;
|
||||||
|
<DT><B>Returns:</B><DD><CODE>Filter.NEUTRAL</CODE> is there is no string match.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/ExpressionFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/ExpressionFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="ExpressionFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
387
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/LevelMatchFilter.html
vendored
Normal file
387
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/LevelMatchFilter.html
vendored
Normal file
@ -0,0 +1,387 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
LevelMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="LevelMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LevelMatchFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/LevelMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LevelMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class LevelMatchFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.LevelMatchFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>LevelMatchFilter</B><DT>extends org.apache.log4j.spi.Filter</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
This is a very simple filter based on level matching.
|
||||||
|
|
||||||
|
<p>The filter admits two options <b>LevelToMatch</b> and
|
||||||
|
<b>AcceptOnMatch</b>. If there is an exact match between the value
|
||||||
|
of the <b>LevelToMatch</b> option and the level of the <CODE>LoggingEvent</CODE>, then the <A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html#decide(org.apache.log4j.spi.LoggingEvent)"><CODE>decide(org.apache.log4j.spi.LoggingEvent)</CODE></A> method returns <CODE>Filter.ACCEPT</CODE> in case the <b>AcceptOnMatch</b> option value is set
|
||||||
|
to <code>true</code>, if it is <code>false</code> then <CODE>Filter.DENY</CODE> is returned. If there is no match, <CODE>Filter.NEUTRAL</CODE> is returned.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Since:</B></DT>
|
||||||
|
<DD>1.2</DD>
|
||||||
|
<DT><B>Author:</B></DT>
|
||||||
|
<DD>Ceki Gülcü</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html#LevelMatchFilter()">LevelMatchFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Return the decision of this filter.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html#getAcceptOnMatch()">getAcceptOnMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html#getLevelToMatch()">getLevelToMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html#setAcceptOnMatch(boolean)">setAcceptOnMatch</A></B>(boolean acceptOnMatch)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html#setLevelToMatch(java.lang.String)">setLevelToMatch</A></B>(java.lang.String level)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>activateOptions</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="LevelMatchFilter()"><!-- --></A><H3>
|
||||||
|
LevelMatchFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>LevelMatchFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="setLevelToMatch(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setLevelToMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setLevelToMatch</B>(java.lang.String level)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getLevelToMatch()"><!-- --></A><H3>
|
||||||
|
getLevelToMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.lang.String <B>getLevelToMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setAcceptOnMatch(boolean)"><!-- --></A><H3>
|
||||||
|
setAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setAcceptOnMatch</B>(boolean acceptOnMatch)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getAcceptOnMatch()"><!-- --></A><H3>
|
||||||
|
getAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>getAcceptOnMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Return the decision of this filter.
|
||||||
|
|
||||||
|
Returns <CODE>Filter.NEUTRAL</CODE> if the <b>LevelToMatch</b> option
|
||||||
|
is not set or if there is not match. Otherwise, if there is a
|
||||||
|
match, then the returned decision is <CODE>Filter.ACCEPT</CODE> if the
|
||||||
|
<b>AcceptOnMatch</b> property is set to <code>true</code>. The
|
||||||
|
returned decision is <CODE>Filter.DENY</CODE> if the
|
||||||
|
<b>AcceptOnMatch</b> property is set to false.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LevelMatchFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/LevelMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LevelMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
444
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/LevelRangeFilter.html
vendored
Normal file
444
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/LevelRangeFilter.html
vendored
Normal file
@ -0,0 +1,444 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
LevelRangeFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="LevelRangeFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LevelRangeFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/LevelRangeFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LevelRangeFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class LevelRangeFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.LevelRangeFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>LevelRangeFilter</B><DT>extends org.apache.log4j.spi.Filter</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
This is a very simple filter based on level matching, which can be
|
||||||
|
used to reject messages with priorities outside a certain range.
|
||||||
|
|
||||||
|
<p>The filter admits three options <b>LevelMin</b>, <b>LevelMax</b>
|
||||||
|
and <b>AcceptOnMatch</b>.
|
||||||
|
|
||||||
|
<p>If the level of the <CODE>LoggingEvent</CODE> is not between Min and Max
|
||||||
|
(inclusive), then <CODE>Filter.DENY</CODE> is returned.
|
||||||
|
|
||||||
|
<p> If the Logging event level is within the specified range, then if
|
||||||
|
<b>AcceptOnMatch</b> is true, <CODE>Filter.ACCEPT</CODE> is returned, and if
|
||||||
|
<b>AcceptOnMatch</b> is false, <CODE>Filter.NEUTRAL</CODE> is returned.
|
||||||
|
|
||||||
|
<p>If <code>LevelMin</code>w is not defined, then there is no
|
||||||
|
minimum acceptable level (ie a level is never rejected for
|
||||||
|
being too "low"/unimportant). If <code>LevelMax</code> is not
|
||||||
|
defined, then there is no maximum acceptable level (ie a
|
||||||
|
level is never rejected for beeing too "high"/important).
|
||||||
|
|
||||||
|
<p>Refer to the <CODE>setThreshold</CODE> method
|
||||||
|
available to <code>all</code> appenders extending <CODE>AppenderSkeleton</CODE> for a more convenient way to
|
||||||
|
filter out events by level.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Author:</B></DT>
|
||||||
|
<DD>Simon Kitching, based on code by Ceki Gülcü</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html#LevelRangeFilter()">LevelRangeFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Return the decision of this filter.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html#getAcceptOnMatch()">getAcceptOnMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Get the value of the <code>AcceptOnMatch</code> option.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> org.apache.log4j.Level</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html#getLevelMax()">getLevelMax</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Get the value of the <code>LevelMax</code> option.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> org.apache.log4j.Level</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html#getLevelMin()">getLevelMin</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Get the value of the <code>LevelMin</code> option.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html#setAcceptOnMatch(boolean)">setAcceptOnMatch</A></B>(boolean acceptOnMatch)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set the <code>AcceptOnMatch</code> option.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html#setLevelMax(org.apache.log4j.Level)">setLevelMax</A></B>(org.apache.log4j.Level levelMax)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set the <code>LevelMax</code> option.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html#setLevelMin(org.apache.log4j.Level)">setLevelMin</A></B>(org.apache.log4j.Level levelMin)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set the <code>LevelMin</code> option.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>activateOptions</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="LevelRangeFilter()"><!-- --></A><H3>
|
||||||
|
LevelRangeFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>LevelRangeFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Return the decision of this filter.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getLevelMax()"><!-- --></A><H3>
|
||||||
|
getLevelMax</H3>
|
||||||
|
<PRE>
|
||||||
|
public org.apache.log4j.Level <B>getLevelMax</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Get the value of the <code>LevelMax</code> option.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getLevelMin()"><!-- --></A><H3>
|
||||||
|
getLevelMin</H3>
|
||||||
|
<PRE>
|
||||||
|
public org.apache.log4j.Level <B>getLevelMin</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Get the value of the <code>LevelMin</code> option.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getAcceptOnMatch()"><!-- --></A><H3>
|
||||||
|
getAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>getAcceptOnMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Get the value of the <code>AcceptOnMatch</code> option.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setLevelMax(org.apache.log4j.Level)"><!-- --></A><H3>
|
||||||
|
setLevelMax</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setLevelMax</B>(org.apache.log4j.Level levelMax)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set the <code>LevelMax</code> option.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setLevelMin(org.apache.log4j.Level)"><!-- --></A><H3>
|
||||||
|
setLevelMin</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setLevelMin</B>(org.apache.log4j.Level levelMin)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set the <code>LevelMin</code> option.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setAcceptOnMatch(boolean)"><!-- --></A><H3>
|
||||||
|
setAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setAcceptOnMatch</B>(boolean acceptOnMatch)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set the <code>AcceptOnMatch</code> option.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LevelRangeFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/LevelRangeFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LevelRangeFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
415
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/LocationInfoFilter.html
vendored
Normal file
415
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/LocationInfoFilter.html
vendored
Normal file
@ -0,0 +1,415 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
LocationInfoFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="LocationInfoFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LocationInfoFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/LocationInfoFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LocationInfoFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class LocationInfoFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.LocationInfoFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>LocationInfoFilter</B><DT>extends org.apache.log4j.spi.Filter</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
Location information is usually specified at the appender level -
|
||||||
|
all events associated
|
||||||
|
with an appender either create and parse stack traces or they do not.
|
||||||
|
This is an expensive operation and in some cases not needed
|
||||||
|
for all events associated with an appender.
|
||||||
|
|
||||||
|
This filter creates event-level location information only
|
||||||
|
if the provided expression evaluates to true.
|
||||||
|
|
||||||
|
For information on expression syntax,
|
||||||
|
see org.apache.log4j.rule.ExpressionRule
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Author:</B></DT>
|
||||||
|
<DD>Scott Deboy sdeboy@apache.org</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html#LocationInfoFilter()">LocationInfoFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html#activateOptions()">activateOptions</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
If this event does not already contain location information,
|
||||||
|
evaluate the event against the expression.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html#getConvertInFixToPostFix()">getConvertInFixToPostFix</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set whether in-fix expressions should be converted to post-fix.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html#getExpression()">getExpression</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Get expression.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html#setConvertInFixToPostFix(boolean)">setConvertInFixToPostFix</A></B>(boolean newValue)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set whether in-fix expressions should be converted to post-fix.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html#setExpression(java.lang.String)">setExpression</A></B>(java.lang.String exp)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set expression.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="LocationInfoFilter()"><!-- --></A><H3>
|
||||||
|
LocationInfoFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>LocationInfoFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="activateOptions()"><!-- --></A><H3>
|
||||||
|
activateOptions</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>activateOptions</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>activateOptions</CODE> in interface <CODE>org.apache.log4j.spi.OptionHandler</CODE><DT><B>Overrides:</B><DD><CODE>activateOptions</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setExpression(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setExpression</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setExpression</B>(java.lang.String exp)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set expression.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>exp</CODE> - expression.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getExpression()"><!-- --></A><H3>
|
||||||
|
getExpression</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.lang.String <B>getExpression</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Get expression.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>expression.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setConvertInFixToPostFix(boolean)"><!-- --></A><H3>
|
||||||
|
setConvertInFixToPostFix</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setConvertInFixToPostFix</B>(boolean newValue)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set whether in-fix expressions should be converted to post-fix.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>newValue</CODE> - if true, convert/</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getConvertInFixToPostFix()"><!-- --></A><H3>
|
||||||
|
getConvertInFixToPostFix</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>getConvertInFixToPostFix</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set whether in-fix expressions should be converted to post-fix.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>if true, expressions are converted.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>If this event does not already contain location information,
|
||||||
|
evaluate the event against the expression.
|
||||||
|
|
||||||
|
If the expression evaluates to true,
|
||||||
|
force generation of location information by
|
||||||
|
calling getLocationInfo.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>event</CODE> - event
|
||||||
|
<DT><B>Returns:</B><DD>Filter.NEUTRAL.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LocationInfoFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/LocationInfoFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LocationInfoFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
385
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/LoggerMatchFilter.html
vendored
Normal file
385
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/LoggerMatchFilter.html
vendored
Normal file
@ -0,0 +1,385 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
LoggerMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="LoggerMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LoggerMatchFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/LoggerMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LoggerMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class LoggerMatchFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.LoggerMatchFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>LoggerMatchFilter</B><DT>extends org.apache.log4j.spi.Filter</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
This is a very simple filter based on logger name matching.
|
||||||
|
|
||||||
|
<p>The filter admits two options <b>LoggerToMatch</b> and
|
||||||
|
<b>AcceptOnMatch</b>. If there is an exact match between the value
|
||||||
|
of the <b>LoggerToMatch</b> option and the logger of the <CODE>LoggingEvent</CODE>, then the <A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html#decide(org.apache.log4j.spi.LoggingEvent)"><CODE>decide(org.apache.log4j.spi.LoggingEvent)</CODE></A> method returns <CODE>Filter.ACCEPT</CODE> in case the <b>AcceptOnMatch</b> option value is set
|
||||||
|
to <code>true</code>, if it is <code>false</code> then <CODE>Filter.DENY</CODE> is returned. If there is no match, <CODE>Filter.NEUTRAL</CODE> is returned. A loggerToMatch of "root"
|
||||||
|
matches both the root logger and a logger named "root".
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html#LoggerMatchFilter()">LoggerMatchFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html#getAcceptOnMatch()">getAcceptOnMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Gets whether a match should result in acceptance.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html#getLoggerToMatch()">getLoggerToMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Gets logger name.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html#setAcceptOnMatch(boolean)">setAcceptOnMatch</A></B>(boolean acceptOnMatch)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Sets whether a match should result in acceptance.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html#setLoggerToMatch(java.lang.String)">setLoggerToMatch</A></B>(java.lang.String logger)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Sets logger name.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>activateOptions</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="LoggerMatchFilter()"><!-- --></A><H3>
|
||||||
|
LoggerMatchFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>LoggerMatchFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="setLoggerToMatch(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setLoggerToMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setLoggerToMatch</B>(java.lang.String logger)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Sets logger name.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>logger</CODE> - logger name.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getLoggerToMatch()"><!-- --></A><H3>
|
||||||
|
getLoggerToMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.lang.String <B>getLoggerToMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Gets logger name.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>logger name.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setAcceptOnMatch(boolean)"><!-- --></A><H3>
|
||||||
|
setAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setAcceptOnMatch</B>(boolean acceptOnMatch)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Sets whether a match should result in acceptance.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>acceptOnMatch</CODE> - if true, accept if logger name matches, otherwise reject.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getAcceptOnMatch()"><!-- --></A><H3>
|
||||||
|
getAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>getAcceptOnMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Gets whether a match should result in acceptance.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>true if event is accepted if logger name matches.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/LoggerMatchFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/LoggerMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LoggerMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
383
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/StringMatchFilter.html
vendored
Normal file
383
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/StringMatchFilter.html
vendored
Normal file
@ -0,0 +1,383 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
StringMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="StringMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/StringMatchFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/TimeFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/StringMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="StringMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class StringMatchFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.StringMatchFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public class <B>StringMatchFilter</B><DT>extends org.apache.log4j.spi.Filter</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
This is a very simple filter based on string matching.
|
||||||
|
|
||||||
|
<p>The filter admits two options <b>StringToMatch</b> and
|
||||||
|
<b>AcceptOnMatch</b>. If there is a match between the value of the
|
||||||
|
StringToMatch option and the message of the <CODE>LoggingEvent</CODE>,
|
||||||
|
then the <A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html#decide(org.apache.log4j.spi.LoggingEvent)"><CODE>decide(LoggingEvent)</CODE></A> method returns
|
||||||
|
<CODE>Filter.ACCEPT</CODE> if
|
||||||
|
the <b>AcceptOnMatch</b> option value is true, if it is false then
|
||||||
|
<CODE>Filter.DENY</CODE> is returned. If there is no match, <CODE>Filter.NEUTRAL</CODE> is returned.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Since:</B></DT>
|
||||||
|
<DD>0.9.0</DD>
|
||||||
|
<DT><B>Author:</B></DT>
|
||||||
|
<DD>Ceki Gülcü</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html#StringMatchFilter()">StringMatchFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Returns <CODE>Filter.NEUTRAL</CODE> is there is no string match.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html#getAcceptOnMatch()">getAcceptOnMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.lang.String</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html#getStringToMatch()">getStringToMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html#setAcceptOnMatch(boolean)">setAcceptOnMatch</A></B>(boolean acceptOnMatch)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html#setStringToMatch(java.lang.String)">setStringToMatch</A></B>(java.lang.String s)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>activateOptions</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="StringMatchFilter()"><!-- --></A><H3>
|
||||||
|
StringMatchFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>StringMatchFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="setStringToMatch(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setStringToMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setStringToMatch</B>(java.lang.String s)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getStringToMatch()"><!-- --></A><H3>
|
||||||
|
getStringToMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.lang.String <B>getStringToMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setAcceptOnMatch(boolean)"><!-- --></A><H3>
|
||||||
|
setAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setAcceptOnMatch</B>(boolean acceptOnMatch)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getAcceptOnMatch()"><!-- --></A><H3>
|
||||||
|
getAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>getAcceptOnMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Returns <CODE>Filter.NEUTRAL</CODE> is there is no string match.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/StringMatchFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/TimeFilter.html" title="class in org.apache.log4j.filter"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/StringMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="StringMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
402
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/TimeFilter.html
vendored
Normal file
402
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/TimeFilter.html
vendored
Normal file
@ -0,0 +1,402 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
TimeFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="TimeFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/TimeFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
NEXT CLASS</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/TimeFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="TimeFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.filter</FONT>
|
||||||
|
<BR>
|
||||||
|
Class TimeFilter</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by ">org.apache.log4j.spi.Filter
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.filter.TimeFilter</B>
|
||||||
|
</PRE>
|
||||||
|
<DL>
|
||||||
|
<DT><B>All Implemented Interfaces:</B> <DD>org.apache.log4j.spi.OptionHandler</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public final class <B>TimeFilter</B><DT>extends org.apache.log4j.spi.Filter</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
Filters events that fall within a specified time period
|
||||||
|
in each day.
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="fields_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Fields inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>ACCEPT, DENY, NEUTRAL, next</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/TimeFilter.html#TimeFilter()">TimeFilter</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Constructor.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> int</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/TimeFilter.html#decide(org.apache.log4j.spi.LoggingEvent)">decide</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> boolean</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/TimeFilter.html#getAcceptOnMatch()">getAcceptOnMatch</A></B>()</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Gets whether an event within the timespan should be accepted or denied.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/TimeFilter.html#setAcceptOnMatch(boolean)">setAcceptOnMatch</A></B>(boolean acceptOnMatch)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Sets whether an event within the timespan should be accepted or denied.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/TimeFilter.html#setEnd(java.lang.String)">setEnd</A></B>(java.lang.String s)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set end (exclusive) of time span.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/TimeFilter.html#setStart(java.lang.String)">setStart</A></B>(java.lang.String s)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set start (inclusive) of time span.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> void</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/filter/TimeFilter.html#setTimeZone(java.lang.String)">setTimeZone</A></B>(java.lang.String s)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
Set timezone.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_org.apache.log4j.spi.Filter"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class org.apache.log4j.spi.Filter</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>activateOptions</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ========= CONSTRUCTOR DETAIL ======== -->
|
||||||
|
|
||||||
|
<A NAME="constructor_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Constructor Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="TimeFilter()"><!-- --></A><H3>
|
||||||
|
TimeFilter</H3>
|
||||||
|
<PRE>
|
||||||
|
public <B>TimeFilter</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Constructor.
|
||||||
|
<P>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="setStart(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setStart</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setStart</B>(java.lang.String s)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set start (inclusive) of time span.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>s</CODE> - string representation of start time as HH:mm:ss.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setEnd(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setEnd</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setEnd</B>(java.lang.String s)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set end (exclusive) of time span.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>s</CODE> - string representation of end time as HH:mm:ss.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setTimeZone(java.lang.String)"><!-- --></A><H3>
|
||||||
|
setTimeZone</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setTimeZone</B>(java.lang.String s)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Set timezone.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>s</CODE> - time zone.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="setAcceptOnMatch(boolean)"><!-- --></A><H3>
|
||||||
|
setAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public void <B>setAcceptOnMatch</B>(boolean acceptOnMatch)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Sets whether an event within the timespan should be accepted or denied.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Parameters:</B><DD><CODE>acceptOnMatch</CODE> - true if matching event should be accepted.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="getAcceptOnMatch()"><!-- --></A><H3>
|
||||||
|
getAcceptOnMatch</H3>
|
||||||
|
<PRE>
|
||||||
|
public boolean <B>getAcceptOnMatch</B>()</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>Gets whether an event within the timespan should be accepted or denied.
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Returns:</B><DD>true if matching event should be accepted.</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<A NAME="decide(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
decide</H3>
|
||||||
|
<PRE>
|
||||||
|
public int <B>decide</B>(org.apache.log4j.spi.LoggingEvent event)</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD>
|
||||||
|
<P>
|
||||||
|
<DD><DL>
|
||||||
|
<DT><B>Specified by:</B><DD><CODE>decide</CODE> in class <CODE>org.apache.log4j.spi.Filter</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
<DD><DL>
|
||||||
|
</DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/TimeFilter.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter"><B>PREV CLASS</B></A>
|
||||||
|
NEXT CLASS</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/TimeFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="TimeFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#fields_inherited_from_class_org.apache.log4j.spi.Filter">FIELD</A> | <A HREF="#constructor_summary">CONSTR</A> | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: FIELD | <A HREF="#constructor_detail">CONSTR</A> | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/class-use/AndFilter.html
vendored
Normal file
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/class-use/AndFilter.html
vendored
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.AndFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.AndFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/AndFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useAndFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="AndFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.AndFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.AndFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/AndFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useAndFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="AndFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/class-use/DenyAllFilter.html
vendored
Normal file
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/class-use/DenyAllFilter.html
vendored
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.DenyAllFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.DenyAllFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useDenyAllFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="DenyAllFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.DenyAllFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.DenyAllFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useDenyAllFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="DenyAllFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.ExpressionFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.ExpressionFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useExpressionFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="ExpressionFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.ExpressionFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.ExpressionFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useExpressionFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="ExpressionFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.LevelMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.LevelMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useLevelMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LevelMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.LevelMatchFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.LevelMatchFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useLevelMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LevelMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.LevelRangeFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.LevelRangeFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useLevelRangeFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LevelRangeFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.LevelRangeFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.LevelRangeFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useLevelRangeFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LevelRangeFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.LocationInfoFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.LocationInfoFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useLocationInfoFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LocationInfoFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.LocationInfoFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.LocationInfoFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useLocationInfoFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LocationInfoFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.LoggerMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.LoggerMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useLoggerMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LoggerMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.LoggerMatchFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.LoggerMatchFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useLoggerMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="LoggerMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.StringMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.StringMatchFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useStringMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="StringMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.StringMatchFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.StringMatchFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useStringMatchFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="StringMatchFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/class-use/TimeFilter.html
vendored
Normal file
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/class-use/TimeFilter.html
vendored
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Class org.apache.log4j.filter.TimeFilter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Class org.apache.log4j.filter.TimeFilter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/TimeFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useTimeFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="TimeFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Class<br>org.apache.log4j.filter.TimeFilter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter.TimeFilter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../org/apache/log4j/filter/TimeFilter.html" title="class in org.apache.log4j.filter"><FONT CLASS="NavBarFont1"><B>Class</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../../index.html?org/apache/log4j/filter//class-useTimeFilter.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="TimeFilter.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
49
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/package-frame.html
vendored
Normal file
49
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/package-frame.html
vendored
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
org.apache.log4j.filter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white">
|
||||||
|
<FONT size="+1" CLASS="FrameTitleFont">
|
||||||
|
<A HREF="../../../../org/apache/log4j/filter/package-summary.html" target="classFrame">org.apache.log4j.filter</A></FONT>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD NOWRAP><FONT size="+1" CLASS="FrameHeadingFont">
|
||||||
|
Classes</FONT>
|
||||||
|
<FONT CLASS="FrameItemFont">
|
||||||
|
<BR>
|
||||||
|
<A HREF="AndFilter.html" title="class in org.apache.log4j.filter" target="classFrame">AndFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="DenyAllFilter.html" title="class in org.apache.log4j.filter" target="classFrame">DenyAllFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="ExpressionFilter.html" title="class in org.apache.log4j.filter" target="classFrame">ExpressionFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="LevelMatchFilter.html" title="class in org.apache.log4j.filter" target="classFrame">LevelMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="LevelRangeFilter.html" title="class in org.apache.log4j.filter" target="classFrame">LevelRangeFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="LocationInfoFilter.html" title="class in org.apache.log4j.filter" target="classFrame">LocationInfoFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="LoggerMatchFilter.html" title="class in org.apache.log4j.filter" target="classFrame">LoggerMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="StringMatchFilter.html" title="class in org.apache.log4j.filter" target="classFrame">StringMatchFilter</A>
|
||||||
|
<BR>
|
||||||
|
<A HREF="TimeFilter.html" title="class in org.apache.log4j.filter" target="classFrame">TimeFilter</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
196
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/package-summary.html
vendored
Normal file
196
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/package-summary.html
vendored
Normal file
@ -0,0 +1,196 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
org.apache.log4j.filter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="org.apache.log4j.filter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/extras/package-summary.html"><B>PREV PACKAGE</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/helpers/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/package-summary.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<H2>
|
||||||
|
Package org.apache.log4j.filter
|
||||||
|
</H2>
|
||||||
|
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Class Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/AndFilter.html" title="class in org.apache.log4j.filter">AndFilter</A></B></TD>
|
||||||
|
<TD>A filter that 'and's the results of any number of contained filters together.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter">DenyAllFilter</A></B></TD>
|
||||||
|
<TD>This filter drops all logging events.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter">ExpressionFilter</A></B></TD>
|
||||||
|
<TD>A filter supporting complex expressions - supports both infix and postfix
|
||||||
|
expressions (infix expressions must first be converted to postfix prior
|
||||||
|
to processing).</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter">LevelMatchFilter</A></B></TD>
|
||||||
|
<TD>This is a very simple filter based on level matching.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter">LevelRangeFilter</A></B></TD>
|
||||||
|
<TD>This is a very simple filter based on level matching, which can be
|
||||||
|
used to reject messages with priorities outside a certain range.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter">LocationInfoFilter</A></B></TD>
|
||||||
|
<TD>Location information is usually specified at the appender level -
|
||||||
|
all events associated
|
||||||
|
with an appender either create and parse stack traces or they do not.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter">LoggerMatchFilter</A></B></TD>
|
||||||
|
<TD>This is a very simple filter based on logger name matching.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter">StringMatchFilter</A></B></TD>
|
||||||
|
<TD>This is a very simple filter based on string matching.</TD>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD WIDTH="15%"><B><A HREF="../../../../org/apache/log4j/filter/TimeFilter.html" title="class in org.apache.log4j.filter">TimeFilter</A></B></TD>
|
||||||
|
<TD>Filters events that fall within a specified time period
|
||||||
|
in each day.</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Package</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-use.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/extras/package-summary.html"><B>PREV PACKAGE</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/helpers/package-summary.html"><B>NEXT PACKAGE</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/package-summary.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-summary.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
158
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/package-tree.html
vendored
Normal file
158
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/package-tree.html
vendored
Normal file
@ -0,0 +1,158 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
org.apache.log4j.filter Class Hierarchy (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="org.apache.log4j.filter Class Hierarchy (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/extras/package-tree.html"><B>PREV</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/helpers/package-tree.html"><B>NEXT</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/package-tree.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
Hierarchy For Package org.apache.log4j.filter
|
||||||
|
</H2>
|
||||||
|
</CENTER>
|
||||||
|
<DL>
|
||||||
|
<DT><B>Package Hierarchies:</B><DD><A HREF="../../../../overview-tree.html">All Packages</A></DL>
|
||||||
|
<HR>
|
||||||
|
<H2>
|
||||||
|
Class Hierarchy
|
||||||
|
</H2>
|
||||||
|
<UL>
|
||||||
|
<LI TYPE="circle">java.lang.Object<UL>
|
||||||
|
<LI TYPE="circle">org.apache.log4j.spi.Filter (implements org.apache.log4j.spi.OptionHandler)
|
||||||
|
<UL>
|
||||||
|
<LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/AndFilter.html" title="class in org.apache.log4j.filter"><B>AndFilter</B></A> (implements org.apache.log4j.xml.<A HREF="../../../../org/apache/log4j/xml/UnrecognizedElementHandler.html" title="interface in org.apache.log4j.xml">UnrecognizedElementHandler</A>)
|
||||||
|
<LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/DenyAllFilter.html" title="class in org.apache.log4j.filter"><B>DenyAllFilter</B></A><LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/ExpressionFilter.html" title="class in org.apache.log4j.filter"><B>ExpressionFilter</B></A><LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/LevelMatchFilter.html" title="class in org.apache.log4j.filter"><B>LevelMatchFilter</B></A><LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/LevelRangeFilter.html" title="class in org.apache.log4j.filter"><B>LevelRangeFilter</B></A><LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/LocationInfoFilter.html" title="class in org.apache.log4j.filter"><B>LocationInfoFilter</B></A><LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/LoggerMatchFilter.html" title="class in org.apache.log4j.filter"><B>LoggerMatchFilter</B></A><LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/StringMatchFilter.html" title="class in org.apache.log4j.filter"><B>StringMatchFilter</B></A><LI TYPE="circle">org.apache.log4j.filter.<A HREF="../../../../org/apache/log4j/filter/TimeFilter.html" title="class in org.apache.log4j.filter"><B>TimeFilter</B></A></UL>
|
||||||
|
</UL>
|
||||||
|
</UL>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Use</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Tree</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../org/apache/log4j/extras/package-tree.html"><B>PREV</B></A>
|
||||||
|
<A HREF="../../../../org/apache/log4j/helpers/package-tree.html"><B>NEXT</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/package-tree.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-tree.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/package-use.html
vendored
Normal file
145
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/filter/package-use.html
vendored
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
Uses of Package org.apache.log4j.filter (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="Uses of Package org.apache.log4j.filter (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/package-use.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<CENTER>
|
||||||
|
<H2>
|
||||||
|
<B>Uses of Package<br>org.apache.log4j.filter</B></H2>
|
||||||
|
</CENTER>
|
||||||
|
No usage of org.apache.log4j.filter
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <FONT CLASS="NavBarFont1">Class</FONT> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Use</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV
|
||||||
|
NEXT</FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/filter/package-use.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="package-use.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
259
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/helpers/MDCKeySetExtractor.html
vendored
Normal file
259
thirdparty/apache-log4j-extras-1.0/site/apidocs/org/apache/log4j/helpers/MDCKeySetExtractor.html
vendored
Normal file
@ -0,0 +1,259 @@
|
|||||||
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
|
||||||
|
<!--NewPage-->
|
||||||
|
<HTML>
|
||||||
|
<HEAD>
|
||||||
|
<!-- Generated by javadoc (build 1.6.0) -->
|
||||||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||||||
|
<TITLE>
|
||||||
|
MDCKeySetExtractor (Apache Extras Companion for log4j 1.2. 1.0 API)
|
||||||
|
</TITLE>
|
||||||
|
|
||||||
|
<META NAME="date" CONTENT="2007-08-25">
|
||||||
|
|
||||||
|
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
|
||||||
|
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
function windowTitle()
|
||||||
|
{
|
||||||
|
if (location.href.indexOf('is-external=true') == -1) {
|
||||||
|
parent.document.title="MDCKeySetExtractor (Apache Extras Companion for log4j 1.2. 1.0 API)";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
</HEAD>
|
||||||
|
|
||||||
|
<BODY BGCOLOR="white" onload="windowTitle();">
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ========= START OF TOP NAVBAR ======= -->
|
||||||
|
<A NAME="navbar_top"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_top" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_top_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/MDCKeySetExtractor.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV CLASS
|
||||||
|
<A HREF="../../../../org/apache/log4j/helpers/UtilLoggingLevel.html" title="class in org.apache.log4j.helpers"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/helpers/MDCKeySetExtractor.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="MDCKeySetExtractor.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | CONSTR | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: <A HREF="#field_detail">FIELD</A> | CONSTR | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_top"></A>
|
||||||
|
<!-- ========= END OF TOP NAVBAR ========= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
<!-- ======== START OF CLASS DATA ======== -->
|
||||||
|
<H2>
|
||||||
|
<FONT SIZE="-1">
|
||||||
|
org.apache.log4j.helpers</FONT>
|
||||||
|
<BR>
|
||||||
|
Class MDCKeySetExtractor</H2>
|
||||||
|
<PRE>
|
||||||
|
java.lang.Object
|
||||||
|
<IMG SRC="../../../../resources/inherit.gif" ALT="extended by "><B>org.apache.log4j.helpers.MDCKeySetExtractor</B>
|
||||||
|
</PRE>
|
||||||
|
<HR>
|
||||||
|
<DL>
|
||||||
|
<DT><PRE>public final class <B>MDCKeySetExtractor</B><DT>extends java.lang.Object</DL>
|
||||||
|
</PRE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
<!-- =========== FIELD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Field Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE>static <A HREF="../../../../org/apache/log4j/helpers/MDCKeySetExtractor.html" title="class in org.apache.log4j.helpers">MDCKeySetExtractor</A></CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/helpers/MDCKeySetExtractor.html#INSTANCE">INSTANCE</A></B></CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<!-- ========== METHOD SUMMARY =========== -->
|
||||||
|
|
||||||
|
<A NAME="method_summary"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="2"><FONT SIZE="+2">
|
||||||
|
<B>Method Summary</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
|
||||||
|
<CODE> java.util.Set</CODE></FONT></TD>
|
||||||
|
<TD><CODE><B><A HREF="../../../../org/apache/log4j/helpers/MDCKeySetExtractor.html#getPropertyKeySet(org.apache.log4j.spi.LoggingEvent)">getPropertyKeySet</A></B>(org.apache.log4j.spi.LoggingEvent event)</CODE>
|
||||||
|
|
||||||
|
<BR>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
|
||||||
|
<TH ALIGN="left"><B>Methods inherited from class java.lang.Object</B></TH>
|
||||||
|
</TR>
|
||||||
|
<TR BGCOLOR="white" CLASS="TableRowColor">
|
||||||
|
<TD><CODE>clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait</CODE></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<P>
|
||||||
|
|
||||||
|
<!-- ============ FIELD DETAIL =========== -->
|
||||||
|
|
||||||
|
<A NAME="field_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Field Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="INSTANCE"><!-- --></A><H3>
|
||||||
|
INSTANCE</H3>
|
||||||
|
<PRE>
|
||||||
|
public static final <A HREF="../../../../org/apache/log4j/helpers/MDCKeySetExtractor.html" title="class in org.apache.log4j.helpers">MDCKeySetExtractor</A> <B>INSTANCE</B></PRE>
|
||||||
|
<DL>
|
||||||
|
<DL>
|
||||||
|
</DL>
|
||||||
|
</DL>
|
||||||
|
|
||||||
|
<!-- ============ METHOD DETAIL ========== -->
|
||||||
|
|
||||||
|
<A NAME="method_detail"><!-- --></A>
|
||||||
|
<TABLE BORDER="1" WIDTH="100%" CELLPADDING="3" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
|
||||||
|
<TH ALIGN="left" COLSPAN="1"><FONT SIZE="+2">
|
||||||
|
<B>Method Detail</B></FONT></TH>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
|
||||||
|
<A NAME="getPropertyKeySet(org.apache.log4j.spi.LoggingEvent)"><!-- --></A><H3>
|
||||||
|
getPropertyKeySet</H3>
|
||||||
|
<PRE>
|
||||||
|
public java.util.Set <B>getPropertyKeySet</B>(org.apache.log4j.spi.LoggingEvent event)
|
||||||
|
throws java.lang.Exception</PRE>
|
||||||
|
<DL>
|
||||||
|
<DD><DL>
|
||||||
|
|
||||||
|
<DT><B>Throws:</B>
|
||||||
|
<DD><CODE>java.lang.Exception</CODE></DL>
|
||||||
|
</DD>
|
||||||
|
</DL>
|
||||||
|
<!-- ========= END OF CLASS DATA ========= -->
|
||||||
|
<HR>
|
||||||
|
|
||||||
|
|
||||||
|
<!-- ======= START OF BOTTOM NAVBAR ====== -->
|
||||||
|
<A NAME="navbar_bottom"><!-- --></A>
|
||||||
|
<A HREF="#skip-navbar_bottom" title="Skip navigation links"></A>
|
||||||
|
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0" SUMMARY="">
|
||||||
|
<TR>
|
||||||
|
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
|
||||||
|
<A NAME="navbar_bottom_firstrow"><!-- --></A>
|
||||||
|
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3" SUMMARY="">
|
||||||
|
<TR ALIGN="center" VALIGN="top">
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../overview-summary.html"><FONT CLASS="NavBarFont1"><B>Overview</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-summary.html"><FONT CLASS="NavBarFont1"><B>Package</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> <FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="class-use/MDCKeySetExtractor.html"><FONT CLASS="NavBarFont1"><B>Use</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="package-tree.html"><FONT CLASS="NavBarFont1"><B>Tree</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../deprecated-list.html"><FONT CLASS="NavBarFont1"><B>Deprecated</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../index-all.html"><FONT CLASS="NavBarFont1"><B>Index</B></FONT></A> </TD>
|
||||||
|
<TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1"> <A HREF="../../../../help-doc.html"><FONT CLASS="NavBarFont1"><B>Help</B></FONT></A> </TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
</TD>
|
||||||
|
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
|
||||||
|
</EM>
|
||||||
|
</TD>
|
||||||
|
</TR>
|
||||||
|
|
||||||
|
<TR>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
PREV CLASS
|
||||||
|
<A HREF="../../../../org/apache/log4j/helpers/UtilLoggingLevel.html" title="class in org.apache.log4j.helpers"><B>NEXT CLASS</B></A></FONT></TD>
|
||||||
|
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
|
||||||
|
<A HREF="../../../../index.html?org/apache/log4j/helpers/MDCKeySetExtractor.html" target="_top"><B>FRAMES</B></A>
|
||||||
|
<A HREF="MDCKeySetExtractor.html" target="_top"><B>NO FRAMES</B></A>
|
||||||
|
<SCRIPT type="text/javascript">
|
||||||
|
<!--
|
||||||
|
if(window==top) {
|
||||||
|
document.writeln('<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>');
|
||||||
|
}
|
||||||
|
//-->
|
||||||
|
</SCRIPT>
|
||||||
|
<NOSCRIPT>
|
||||||
|
<A HREF="../../../../allclasses-noframe.html"><B>All Classes</B></A>
|
||||||
|
</NOSCRIPT>
|
||||||
|
|
||||||
|
|
||||||
|
</FONT></TD>
|
||||||
|
</TR>
|
||||||
|
<TR>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
SUMMARY: NESTED | <A HREF="#field_summary">FIELD</A> | CONSTR | <A HREF="#method_summary">METHOD</A></FONT></TD>
|
||||||
|
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
|
||||||
|
DETAIL: <A HREF="#field_detail">FIELD</A> | CONSTR | <A HREF="#method_detail">METHOD</A></FONT></TD>
|
||||||
|
</TR>
|
||||||
|
</TABLE>
|
||||||
|
<A NAME="skip-navbar_bottom"></A>
|
||||||
|
<!-- ======== END OF BOTTOM NAVBAR ======= -->
|
||||||
|
|
||||||
|
<HR>
|
||||||
|
Copyright © 2007 <a href="http://www.apache.org">Apache Software Foundation</a>. All Rights Reserved.
|
||||||
|
</BODY>
|
||||||
|
</HTML>
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Loading…
x
Reference in New Issue
Block a user