JBoss Rich Faces SVN: r19235 - in modules/tests/metamer/trunk: ftest-source/src/main/java/org and 1 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: lfryc(a)redhat.com
Date: 2010-09-17 05:12:32 -0400 (Fri, 17 Sep 2010)
New Revision: 19235
Added:
modules/tests/metamer/trunk/ftest-source/src/main/java/org/testng/
modules/tests/metamer/trunk/ftest-source/src/main/java/org/testng/Assert.java
Modified:
modules/tests/metamer/trunk/pom.xml
Log:
upgraded testng to 5.14; added org.testng.Assert locally to project (caused runtime errors while there is backward incompatibility with testng-eclipse plugin)
Added: modules/tests/metamer/trunk/ftest-source/src/main/java/org/testng/Assert.java
===================================================================
--- modules/tests/metamer/trunk/ftest-source/src/main/java/org/testng/Assert.java (rev 0)
+++ modules/tests/metamer/trunk/ftest-source/src/main/java/org/testng/Assert.java 2010-09-17 09:12:32 UTC (rev 19235)
@@ -0,0 +1,676 @@
+package org.testng;
+
+import org.testng.collections.Lists;
+
+import java.lang.reflect.Array;
+import java.util.Arrays;
+import java.util.Collection;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+
+
+/**
+ * Assertion tool class. Presents assertion methods with a more natural parameter order.
+ * The order is always <B>actualValue</B>, <B>expectedValue</B> [, message].
+ *
+ * @author <a href='mailto:the_mindstorm@evolva.ro'>Alexandru Popescu</a>
+ */
+public class Assert {
+
+ /**
+ * Protect constructor since it is a static only class
+ */
+ protected Assert() {
+ // hide constructor
+ }
+
+ /**
+ * Asserts that a condition is true. If it isn't,
+ * an AssertionError, with the given message, is thrown.
+ * @param condition the condition to evaluate
+ * @param message the assertion error message
+ */
+ static public void assertTrue(boolean condition, CharSequence message) {
+ if(!condition) {
+ failNotEquals( Boolean.valueOf(condition), Boolean.TRUE, message);
+ }
+ }
+
+ /**
+ * Asserts that a condition is true. If it isn't,
+ * an AssertionError is thrown.
+ * @param condition the condition to evaluate
+ */
+ static public void assertTrue(boolean condition) {
+ assertTrue(condition, null);
+ }
+
+ /**
+ * Asserts that a condition is false. If it isn't,
+ * an AssertionError, with the given message, is thrown.
+ * @param condition the condition to evaluate
+ * @param message the assertion error message
+ */
+ static public void assertFalse(boolean condition, CharSequence message) {
+ if(condition) {
+ failNotEquals( Boolean.valueOf(condition), Boolean.FALSE, message); // TESTNG-81
+ }
+ }
+
+ /**
+ * Asserts that a condition is false. If it isn't,
+ * an AssertionError is thrown.
+ * @param condition the condition to evaluate
+ */
+ static public void assertFalse(boolean condition) {
+ assertFalse(condition, null);
+ }
+
+ /**
+ * Fails a test with the given message and wrapping the original exception.
+ *
+ * @param message the assertion error message
+ * @param realCause the original exception
+ */
+ static public void fail(CharSequence message, Throwable realCause) {
+ AssertionError ae = new AssertionError(message);
+ ae.initCause(realCause);
+
+ throw ae;
+ }
+
+ /**
+ * Fails a test with the given message.
+ * @param message the assertion error message
+ */
+ static public void fail(CharSequence message) {
+ throw new AssertionError(message);
+ }
+
+ /**
+ * Fails a test with no message.
+ */
+ static public void fail() {
+ fail(null);
+ }
+
+ /**
+ * Asserts that two objects are equal. If they are not,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(Object actual, Object expected, CharSequence message) {
+ if((expected == null) && (actual == null)) {
+ return;
+ }
+ if(expected != null) {
+ if (expected.getClass().isArray()) {
+ assertArrayEquals(actual, expected, message);
+ return;
+ } else if (expected.equals(actual)) {
+ return;
+ }
+ }
+ failNotEquals(actual, expected, message);
+ }
+
+ /**
+ * Asserts that two objects are equal. It they are not, an AssertionError,
+ * with given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value (should be an non-null array value)
+ * @param message the assertion error message
+ */
+ private static void assertArrayEquals(Object actual, Object expected, CharSequence message) {
+ //is called only when expected is an array
+ if (actual.getClass().isArray()) {
+ int expectedLength = Array.getLength(expected);
+ if (expectedLength == Array.getLength(actual)) {
+ for (int i = 0 ; i < expectedLength ; i++) {
+ Object _actual = Array.get(actual, i);
+ Object _expected = Array.get(expected, i);
+ try {
+ assertEquals(_actual, _expected);
+ } catch (AssertionError ae) {
+ failNotEquals(actual, expected, message == null ? "" : message
+ + " (values as index " + i + " are not the same)");
+ }
+ }
+ //array values matched
+ return;
+ } else {
+ failNotEquals(Array.getLength(actual), expectedLength, message == null ? "" : message
+ + " (Array lengths are not the same)");
+ }
+ }
+ failNotEquals(actual, expected, message);
+ }
+
+/**
+ * Asserts that two objects are equal. If they are not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(Object actual, Object expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two Strings are equal. If they are not,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(String actual, String expected, CharSequence message) {
+ assertEquals((Object) actual, (Object) expected, message);
+ }
+
+ /**
+ * Asserts that two Strings are equal. If they are not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(String actual, String expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two doubles are equal concerning a delta. If they are not,
+ * an AssertionError, with the given message, is thrown. If the expected
+ * value is infinity then the delta value is ignored.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param delta the absolute tolerate value value between the actual and expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(double actual, double expected, double delta, CharSequence message) {
+ // handle infinity specially since subtracting to infinite values gives NaN and the
+ // the following test fails
+ if(Double.isInfinite(expected)) {
+ if(!(expected == actual)) {
+ failNotEquals(new Double(actual), new Double(expected), message);
+ }
+ }
+ else if(!(Math.abs(expected - actual) <= delta)) { // Because comparison with NaN always returns false
+ failNotEquals(new Double(actual), new Double(expected), message);
+ }
+ }
+
+ /**
+ * Asserts that two doubles are equal concerning a delta. If they are not,
+ * an AssertionError is thrown. If the expected value is infinity then the
+ * delta value is ignored.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param delta the absolute tolerate value value between the actual and expected value
+ */
+ static public void assertEquals(double actual, double expected, double delta) {
+ assertEquals(actual, expected, delta, null);
+ }
+
+ /**
+ * Asserts that two floats are equal concerning a delta. If they are not,
+ * an AssertionError, with the given message, is thrown. If the expected
+ * value is infinity then the delta value is ignored.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param delta the absolute tolerate value value between the actual and expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(float actual, float expected, float delta, CharSequence message) {
+ // handle infinity specially since subtracting to infinite values gives NaN and the
+ // the following test fails
+ if(Float.isInfinite(expected)) {
+ if(!(expected == actual)) {
+ failNotEquals(new Float(actual), new Float(expected), message);
+ }
+ }
+ else if(!(Math.abs(expected - actual) <= delta)) {
+ failNotEquals(new Float(actual), new Float(expected), message);
+ }
+ }
+
+ /**
+ * Asserts that two floats are equal concerning a delta. If they are not,
+ * an AssertionError is thrown. If the expected
+ * value is infinity then the delta value is ignored.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param delta the absolute tolerate value value between the actual and expected value
+ */
+ static public void assertEquals(float actual, float expected, float delta) {
+ assertEquals(actual, expected, delta, null);
+ }
+
+ /**
+ * Asserts that two longs are equal. If they are not,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(long actual, long expected, CharSequence message) {
+ assertEquals(new Long(actual), new Long(expected), message);
+ }
+
+ /**
+ * Asserts that two longs are equal. If they are not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(long actual, long expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two booleans are equal. If they are not,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(boolean actual, boolean expected, CharSequence message) {
+ assertEquals( Boolean.valueOf(actual), Boolean.valueOf(expected), message);
+ }
+
+ /**
+ * Asserts that two booleans are equal. If they are not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(boolean actual, boolean expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two bytes are equal. If they are not,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(byte actual, byte expected, CharSequence message) {
+ assertEquals(new Byte(actual), new Byte(expected), message);
+ }
+
+ /**
+ * Asserts that two bytes are equal. If they are not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(byte actual, byte expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two chars are equal. If they are not,
+ * an AssertionFailedError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(char actual, char expected, CharSequence message) {
+ assertEquals(new Character(actual), new Character(expected), message);
+ }
+
+ /**
+ * Asserts that two chars are equal. If they are not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(char actual, char expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two shorts are equal. If they are not,
+ * an AssertionFailedError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(short actual, short expected, CharSequence message) {
+ assertEquals(new Short(actual), new Short(expected), message);
+ }
+
+ /**
+ * Asserts that two shorts are equal. If they are not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(short actual, short expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two ints are equal. If they are not,
+ * an AssertionFailedError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(int actual, int expected, CharSequence message) {
+ assertEquals(new Integer(actual), new Integer(expected), message);
+ }
+
+ /**
+ * Asserts that two ints are equal. If they are not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(int actual, int expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that an object isn't null. If it is,
+ * an AssertionError is thrown.
+ * @param object the assertion object
+ */
+ static public void assertNotNull(Object object) {
+ assertNotNull(object, null);
+ }
+
+ /**
+ * Asserts that an object isn't null. If it is,
+ * an AssertionFailedError, with the given message, is thrown.
+ * @param object the assertion object
+ * @param message the assertion error message
+ */
+ static public void assertNotNull(Object object, CharSequence message) {
+ assertTrue(object != null, message);
+ }
+
+ /**
+ * Asserts that an object is null. If it is not,
+ * an AssertionError, with the given message, is thrown.
+ * @param object the assertion object
+ */
+ static public void assertNull(Object object) {
+ assertNull(object, null);
+ }
+
+ /**
+ * Asserts that an object is null. If it is not,
+ * an AssertionFailedError, with the given message, is thrown.
+ * @param object the assertion object
+ * @param message the assertion error message
+ */
+ static public void assertNull(Object object, CharSequence message) {
+ assertTrue(object == null, message);
+ }
+
+ /**
+ * Asserts that two objects refer to the same object. If they do not,
+ * an AssertionFailedError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertSame(Object actual, Object expected, CharSequence message) {
+ if(expected == actual) {
+ return;
+ }
+ failNotSame(actual, expected, message);
+ }
+
+ /**
+ * Asserts that two objects refer to the same object. If they do not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertSame(Object actual, Object expected) {
+ assertSame(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two objects do not refer to the same objects. If they do,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertNotSame(Object actual, Object expected, CharSequence message) {
+ if(expected == actual) {
+ failSame(actual, expected, message);
+ }
+ }
+
+ /**
+ * Asserts that two objects do not refer to the same object. If they do,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertNotSame(Object actual, Object expected) {
+ assertNotSame(actual, expected, null);
+ }
+
+ static private void failSame(Object actual, Object expected, CharSequence message) {
+ String formatted = "";
+ if(message != null) {
+ formatted = message + " ";
+ }
+ fail(formatted + "expected not same with:<" + expected +"> but was same:<" + actual + ">");
+ }
+
+ static private void failNotSame(Object actual, Object expected, CharSequence message) {
+ String formatted = "";
+ if(message != null) {
+ formatted = message + " ";
+ }
+ fail(formatted + "expected same with:<" + expected + "> but was:<" + actual + ">");
+ }
+
+ static private void failNotEquals(Object actual , Object expected, CharSequence message ) {
+ fail(format(actual, expected, message));
+ }
+
+ static String format(Object actual, Object expected, CharSequence message) {
+ String formatted = "";
+ if (null != message) {
+ formatted = message + " ";
+ }
+
+ return formatted + "expected:<" + expected + "> but was:<" + actual + ">";
+ }
+
+ /**
+ * Asserts that two collections contain the same elements in the same order. If they do not,
+ * an AssertionError is thrown.
+ *
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(Collection actual, Collection expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two collections contain the same elements in the same order. If they do not,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(Collection actual, Collection expected, CharSequence message) {
+ if(actual == expected) return;
+
+ if ((actual == null && expected != null) || (actual != null && expected == null)) {
+ if (message != null) fail(message);
+ else fail("Arrays not equal: " + expected + " and " + actual);
+ }
+
+ assertEquals(actual.size(), expected.size(), message + ": lists don't have the same size");
+
+ Iterator actIt = actual.iterator();
+ Iterator expIt = expected.iterator();
+ int i = -1;
+ while(actIt.hasNext() && expIt.hasNext()) {
+ i++;
+ Object e = expIt.next();
+ Object a = actIt.next();
+ String errorMessage = message == null
+ ? "Lists differ at element [" + i + "]: " + e + " != " + a
+ : message + ": Lists differ at element [" + i + "]: " + e + " != " + a;
+
+ assertEquals(a, e, errorMessage);
+ }
+ }
+
+ /**
+ * Asserts that two arrays contain the same elements in the same order. If they do not,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(Object[] actual, Object[] expected, CharSequence message) {
+ if(actual == expected) return;
+
+ if ((actual == null && expected != null) || (actual != null && expected == null)) {
+ if (message != null) fail(message);
+ else fail("Arrays not equal: " + expected + " and " + actual);
+ }
+ assertEquals(Arrays.asList(actual), Arrays.asList(expected), message);
+ }
+
+ /**
+ * Asserts that two arrays contain the same elements in no particular order. If they do not,
+ * an AssertionError, with the given message, is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEqualsNoOrder(Object[] actual, Object[] expected, CharSequence message) {
+ if(actual == expected) return;
+
+ if ((actual == null && expected != null) || (actual != null && expected == null)) {
+ failAssertNoEqual(actual, expected,
+ "Arrays not equal: " + expected + " and " + actual,
+ message);
+ }
+
+ if (actual.length != expected.length) {
+ failAssertNoEqual(actual, expected,
+ "Arrays do not have the same size:" + actual.length + " != " + expected.length,
+ message);
+ }
+
+ List actualCollection = Lists.newArrayList();
+ for (Object a : actual) {
+ actualCollection.add(a);
+ }
+ for (Object o : expected) {
+ actualCollection.remove(o);
+ }
+ if (actualCollection.size() != 0) {
+ failAssertNoEqual(actual, expected,
+ "Arrays not equal: " + expected + " and " + actual,
+ message);
+ }
+ }
+
+ private static void failAssertNoEqual(Object[] actual, Object[] expected,
+ CharSequence message, CharSequence defaultMessage)
+ {
+ if (message != null) fail(message);
+ else fail(defaultMessage);
+ }
+
+ /**
+ * Asserts that two arrays contain the same elements in the same order. If they do not,
+ * an AssertionError is thrown.
+ *
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(Object[] actual, Object[] expected) {
+ assertEquals(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two arrays contain the same elements in no particular order. If they do not,
+ * an AssertionError is thrown.
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEqualsNoOrder(Object[] actual, Object[] expected) {
+ assertEqualsNoOrder(actual, expected, null);
+ }
+
+ /**
+ * Asserts that two arrays contain the same elements in the same order. If they do not,
+ * an AssertionError is thrown.
+ *
+ * @param actual the actual value
+ * @param expected the expected value
+ */
+ static public void assertEquals(final byte[] actual, final byte[] expected) {
+ assertEquals(actual, expected, "");
+ }
+
+ /**
+ * Asserts that two arrays contain the same elements in the same order. If they do not,
+ * an AssertionError, with the given message, is thrown.
+ *
+ * @param actual the actual value
+ * @param expected the expected value
+ * @param message the assertion error message
+ */
+ static public void assertEquals(final byte[] actual, final byte[] expected, final CharSequence message) {
+ if(expected == actual) {
+ return;
+ }
+ if(null == expected) {
+ fail("expected a null array, but not null found. " + message);
+ }
+ if(null == actual) {
+ fail("expected not null array, but null found. " + message);
+ }
+
+ assertEquals(actual.length, expected.length, "arrays don't have the same size. " + message);
+
+ for(int i= 0; i < expected.length; i++) {
+ if(expected[i] != actual[i]) {
+ fail("arrays differ firstly at element [" + i +"]; "
+ + "expected value is <" + expected[i] +"> but was <"
+ + actual[i] + ">. "
+ + message);
+ }
+ }
+ }
+
+ /**
+ * Asserts that two sets are equal.
+ */
+ static public void assertEquals(Set actual, Set expected) {
+ if (!actual.equals(expected)) {
+ fail("Sets differ: expected " + expected + " but got " + actual);
+ }
+ }
+
+ /**
+ * Asserts that two maps are equal.
+ */
+ static public void assertEquals(Map actual, Map expected) {
+ if (!actual.equals(expected)) {
+ fail("Maps differ: expected " + expected + " but got " + actual);
+ }
+ }
+
+}
Modified: modules/tests/metamer/trunk/pom.xml
===================================================================
--- modules/tests/metamer/trunk/pom.xml 2010-09-17 08:43:11 UTC (rev 19234)
+++ modules/tests/metamer/trunk/pom.xml 2010-09-17 09:12:32 UTC (rev 19235)
@@ -141,7 +141,7 @@
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
- <version>5.12.1</version>
+ <version>5.14</version>
</dependency>
</dependencies>
</dependencyManagement>
14 years, 3 months
JBoss Rich Faces SVN: r19234 - trunk/core/impl/src/main/resources/META-INF/resources.
by richfaces-svn-commits@lists.jboss.org
Author: pyaschenko
Date: 2010-09-17 04:43:11 -0400 (Fri, 17 Sep 2010)
New Revision: 19234
Modified:
trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js
Log:
https://jira.jboss.org/browse/RFPL-761
Modified: trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js
===================================================================
--- trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js 2010-09-17 08:38:05 UTC (rev 19233)
+++ trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js 2010-09-17 08:43:11 UTC (rev 19234)
@@ -21,9 +21,13 @@
richfaces.MyComponent = function(componentId, [options]) {
// call constructor of parent class
$super.constructor.call(this, componentId, [options]);
+
+ <span style="color:red">
// call this.attachToDom method to attach component to dom element
// its required for the client side API calls and to clean up after ajax request or page unload:
// destroy method will be called if component attached to dom
+ this.attachToDom(componentId);
+ </span>
};
// define private method
14 years, 3 months
JBoss Rich Faces SVN: r19233 - trunk/core/impl/src/main/resources/META-INF/resources.
by richfaces-svn-commits@lists.jboss.org
Author: pyaschenko
Date: 2010-09-17 04:38:05 -0400 (Fri, 17 Sep 2010)
New Revision: 19233
Modified:
trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js
Log:
https://jira.jboss.org/browse/RFPL-761
Modified: trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js
===================================================================
--- trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js 2010-09-17 08:11:22 UTC (rev 19232)
+++ trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js 2010-09-17 08:38:05 UTC (rev 19233)
@@ -21,6 +21,9 @@
richfaces.MyComponent = function(componentId, [options]) {
// call constructor of parent class
$super.constructor.call(this, componentId, [options]);
+ // call this.attachToDom method to attach component to dom element
+ // its required for the client side API calls and to clean up after ajax request or page unload:
+ // destroy method will be called if component attached to dom
};
// define private method
@@ -37,7 +40,14 @@
$.extend(richfaces.MyComponent.prototype, (function (params) {
return {
name:"MyComponent",
- f:function (){alert("hello");
+ f:function (){alert("hello"),
+ // destroy method definition for clean up
+ destroy: function () {
+ // clean up code here
+
+ // call parent's destroy method
+ $super.destroy.call(this);
+ }
}
};
})(params));
@@ -181,7 +191,9 @@
return result.join(', ');
},
- // TODO: add jsdocs and qunit tests
+ /** TODO: add jsdocs and qunit tests
+ *
+ */
getValue: function() {
return;
},
@@ -201,6 +213,8 @@
/**
* Attach component object to DOM element by component id, DOM element or jQuery object and returns the element
+ * Its required for the client side API calls and to clean up after ajax request or document unload by
+ * calling destroy method
*
* @function
* @name RichFaces.BaseComponent#attachToDom
14 years, 3 months
JBoss Rich Faces SVN: r19232 - trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces.
by richfaces-svn-commits@lists.jboss.org
Author: pyaschenko
Date: 2010-09-17 04:11:22 -0400 (Fri, 17 Sep 2010)
New Revision: 19232
Modified:
trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js
Log:
https://jira.jboss.org/browse/RF-9105
onchange bubble fix
Modified: trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js
===================================================================
--- trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js 2010-09-17 08:01:17 UTC (rev 19231)
+++ trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js 2010-09-17 08:11:22 UTC (rev 19232)
@@ -76,8 +76,8 @@
inputEventHandlers["blur"+this.namespace] = onBlur;
inputEventHandlers["click"+this.namespace] = onClick;
inputEventHandlers[($.browser.opera ? "keypress" : "keydown")+this.namespace] = onKeyDown;
+ inputEventHandlers["change"+this.namespace] = function (event) {if (this.focused) {event.stopPropagation()}};
rf.Event.bindById(this.fieldId, inputEventHandlers, this);
- //inputEventHandlers["change"+this.namespace] = function (event) {if (this.focused) {event}};
inputEventHandlers = {};
inputEventHandlers["mousedown"+this.namespace] = onSelectMouseDown;
14 years, 3 months
JBoss Rich Faces SVN: r19231 - in trunk: examples/input-demo/src/main/webapp and 4 other directories.
by richfaces-svn-commits@lists.jboss.org
Author: pyaschenko
Date: 2010-09-17 04:01:17 -0400 (Fri, 17 Sep 2010)
New Revision: 19231
Modified:
trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js
trunk/examples/input-demo/src/main/webapp/autocomplete.xhtml
trunk/ui/input/ui/src/main/java/org/richfaces/component/AbstractAutocomplete.java
trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java
trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js
trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js
trunk/ui/input/ui/src/main/templates/autocomplete.template.xml
Log:
https://jira.jboss.org/browse/RF-9105
onblur, onfocus, onchange, onselectitem user event handlers support was added
handlers script output was fixed
Modified: trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js
===================================================================
--- trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js 2010-09-17 07:57:19 UTC (rev 19230)
+++ trunk/core/impl/src/main/resources/META-INF/resources/richfaces-base-component.js 2010-09-17 08:01:17 UTC (rev 19231)
@@ -4,6 +4,8 @@
(function ($, richfaces, params) {
+
+ var RICH_CONTAINER = "richfaces";
richfaces.blankFunction = function (){}; //TODO: add it to global library
@@ -50,6 +52,7 @@
* */
richfaces.BaseComponent = function(componentId) {
this.id = componentId;
+ this.options = {};
};
var $p = {};
@@ -149,7 +152,7 @@
$.extend(DerivedClass.prototype, methods);
return DerivedClass;
- },
+ };
$.extend(richfaces.BaseComponent.prototype, (function (params) {
return {
@@ -177,6 +180,11 @@
result[result.length] = this.name;
return result.join(', ');
},
+
+ // TODO: add jsdocs and qunit tests
+ getValue: function() {
+ return;
+ },
/**
* Method returns element's id for event handlers binding.
@@ -204,7 +212,7 @@
source = source || this.id;
var element = richfaces.getDomElement(source);
if (element) {
- element["richfaces"] = element["richfaces"] || {};
+ element[RICH_CONTAINER] = element[RICH_CONTAINER] || {};
element.richfaces.component = this;
}
return element;
@@ -223,7 +231,45 @@
var element = richfaces.getDomElement(source);
element && element.richfaces && (element.richfaces.component=null);
},
+
+ /** TODO: add jsdocs and qunit tests
+ *
+ */
+ invokeEvent: function(eventType, element, event, data) {
+ var handlerResult, result;
+ var eventObj = $.extend({}, event, {type: eventType});
+ if (!eventObj)
+ {
+ if( document.createEventObject )
+ {
+ eventObj = document.createEventObject();
+ eventObj.type = eventType;
+ }
+ else if( document.createEvent )
+ {
+ eventObj = document.createEvent('Events');
+ eventObj.initEvent( eventType, true, false );
+ }
+ }
+ eventObj[RICH_CONTAINER] = {component:this, data: data};
+
+ var eventHandler = this.options['on'+eventType];
+
+ if (typeof eventHandler == "function")
+ {
+ handlerResult = eventHandler.call(element, eventObj);
+ }
+
+ if (richfaces.Event) {
+ result = richfaces.Event.callHandler(this, eventType, data);
+ }
+
+ if (result!=false && handlerResult!=false) result=true;
+
+ return result;
+ },
+
/**
* Destroy method. Will be called before remove component from the page
*
Modified: trunk/examples/input-demo/src/main/webapp/autocomplete.xhtml
===================================================================
--- trunk/examples/input-demo/src/main/webapp/autocomplete.xhtml 2010-09-17 07:57:19 UTC (rev 19230)
+++ trunk/examples/input-demo/src/main/webapp/autocomplete.xhtml 2010-09-17 08:01:17 UTC (rev 19231)
@@ -3,7 +3,8 @@
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
- xmlns:input="http://richfaces.org/input">
+ xmlns:input="http://richfaces.org/input"
+ xmlns:a4j="http://richfaces.org/a4j">
<f:view contentType="text/html" />
<h:head>
@@ -18,15 +19,21 @@
<f:selectItem itemValue="client"/>
<f:selectItem itemValue="cachedAjax"/>
<f:selectItem itemValue="ajax"/>
- </h:selectOneMenu>
- <div style="height: 300px; width: 300px; overflow: auto;">Text
+ </h:selectOneMenu><br/>
+ <div style="height: 300px; width: 300px; overflow: auto; float:left;">Text
block text block text block text block text block text block text
block text block
- <input:autocomplete clientFilter="if(subString.length>1) if(value.indexOf(subString)!=-1) return true;" mode="#{autoCompleteBean.mode}" minChars="2" autocompleteMethod="#{autoCompleteBean.autocomplete}" var="country" fetchValue="#{country.name}" showButton="true">
+ <input:autocomplete id="myAutocomplete" clientFilter="if(subString.length>1) if(value.indexOf(subString)!=-1) return true;" mode="#{autoCompleteBean.mode}" minChars="2" autocompleteMethod="#{autoCompleteBean.autocomplete}" var="country" fetchValue="#{country.name}" showButton="true"
+ onchange="return onEvent.call(this, event);" onselectitem="return onEvent.call(this, event);" onblur="return onEvent.call(this, event);" onfocus="return onEvent.call(this, event);">
#{country.name} #{country.iso} #{country.domain}
</input:autocomplete>
-
+ <script type="text/javascript">
+ onEvent = function(event, element, data){
+ RichFaces.log.info("jQuery Event: "+(event instanceof jQuery.Event)+"; event: "+event.type+"; data:"+(data || (event['rich']||{})['data'])+"; this.id:"+this.id+"; component:"+ (event['rich']||{})['component']||RichFaces.$(this.id));
+ };
+ RichFaces.Event.bindById("form:myAutocomplete", "selectitem change blur focus", onEvent);
+ </script>
<br />
<select style="width: 200px" name="select">
<option>ccccc</option>
@@ -60,6 +67,9 @@
block text block text block text block text block text block text
block text block text block
</div>
+ <div>
+ <a4j:log mode="inline"></a4j:log>
+ </div>
</h:form>
</h:body>
</html>
Modified: trunk/ui/input/ui/src/main/java/org/richfaces/component/AbstractAutocomplete.java
===================================================================
--- trunk/ui/input/ui/src/main/java/org/richfaces/component/AbstractAutocomplete.java 2010-09-17 07:57:19 UTC (rev 19230)
+++ trunk/ui/input/ui/src/main/java/org/richfaces/component/AbstractAutocomplete.java 2010-09-17 08:01:17 UTC (rev 19231)
@@ -177,13 +177,10 @@
@Attribute(events = @EventName("focus"))
public abstract String getOnfocus();
+
+ @Attribute(events = @EventName("selectitem"))
+ public abstract String getOnselectitem();
- @Attribute(events = @EventName("listblur"))
- public abstract String getOnlistblur();
-
- @Attribute(events = @EventName("listfocus"))
- public abstract String getOnlistfocus();
-
@Attribute(events = @EventName("begin"))
public abstract String getOnbegin();
Modified: trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java
===================================================================
--- trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java 2010-09-17 07:57:19 UTC (rev 19230)
+++ trunk/ui/input/ui/src/main/java/org/richfaces/renderkit/AutocompleteRendererBase.java 2010-09-17 08:01:17 UTC (rev 19231)
@@ -53,6 +53,7 @@
import org.richfaces.component.MetaComponentResolver;
import org.richfaces.component.util.InputUtils;
import org.richfaces.renderkit.util.RendererUtils;
+import org.richfaces.renderkit.util.RendererUtils.ScriptHashVariableWrapper;
import com.google.common.base.Predicates;
import com.google.common.collect.Iterators;
@@ -97,11 +98,14 @@
utils.addToScriptHash(options, "disabled", attributes.get("disabled"), "false");
utils.addToScriptHash(options, "selectFirst", attributes.get("selectFirst"), "true");
utils.addToScriptHash(options, "tokens", attributes.get("tokens"));
- utils.addToScriptHash(options, "onbegin", attributes.get("onbegin"));
- utils.addToScriptHash(options, "oncomplete", attributes.get("oncomplete"));
- utils.addToScriptHash(options, "onerror", attributes.get("onerror"));
- utils.addToScriptHash(options, "onbeforedomupdate", attributes.get("onbeforedomupdate"));
- utils.addToScriptHash(options, "onchange", attributes.get("onchange"));
+ utils.addToScriptHash(options, "onbegin", attributes.get("onbegin"), null, ScriptHashVariableWrapper.EVENT_HANDLER);
+ utils.addToScriptHash(options, "oncomplete", attributes.get("oncomplete"), null, ScriptHashVariableWrapper.EVENT_HANDLER);
+ utils.addToScriptHash(options, "onerror", attributes.get("onerror"), null, ScriptHashVariableWrapper.EVENT_HANDLER);
+ utils.addToScriptHash(options, "onbeforedomupdate", attributes.get("onbeforedomupdate"), null, ScriptHashVariableWrapper.EVENT_HANDLER);
+ utils.addToScriptHash(options, "onchange", attributes.get("onchange"), null, ScriptHashVariableWrapper.EVENT_HANDLER);
+ utils.addToScriptHash(options, "onselectitem", attributes.get("onselectitem"), null, ScriptHashVariableWrapper.EVENT_HANDLER);
+ utils.addToScriptHash(options, "onfocus", attributes.get("onfocus"), null, ScriptHashVariableWrapper.EVENT_HANDLER);
+ utils.addToScriptHash(options, "onblur", attributes.get("onblur"), null, ScriptHashVariableWrapper.EVENT_HANDLER);
utils.addToScriptHash(options, "filterFunction", getClientFilterFunction(component));
String mode = (String) attributes.get("mode");
if (mode != null) {
Modified: trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js
===================================================================
--- trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js 2010-09-17 07:57:19 UTC (rev 19230)
+++ trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/Autocomplete.js 2010-09-17 08:01:17 UTC (rev 19231)
@@ -168,7 +168,7 @@
var index = this.items.index(element);
selectItem.call(this, event, index);
} else {
- this.__onChangeValue(event, getSelectedItemValue.call(this));
+ this.__onEnter(event);
rf.Selection.setCaretTo(rf.getDomElement(this.fieldId));
this.hide(event);
}
@@ -431,10 +431,9 @@
__onBeforeShow: function (event) {
},
__onEnter: function (event) {
- this.__onChangeValue(event, getSelectedItemValue.call(this));
- //rf.getDomElement(this.fieldId).blur();
- //rf.Selection.setCaretTo(rf.getDomElement(this.fieldId));
- //rf.getDomElement(this.fieldId).focus();
+ var value = getSelectedItemValue.call(this);
+ this.__onChangeValue(event, value);
+ this.invokeEvent("selectitem", rf.getDomElement(this.fieldId), event, value);
},
__onShow: function (event) {
if (this.options.selectFirst) {
Modified: trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js
===================================================================
--- trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js 2010-09-17 07:57:19 UTC (rev 19230)
+++ trunk/ui/input/ui/src/main/resources/META-INF/resources/org.richfaces/AutocompleteBase.js 2010-09-17 08:01:17 UTC (rev 19231)
@@ -77,6 +77,7 @@
inputEventHandlers["click"+this.namespace] = onClick;
inputEventHandlers[($.browser.opera ? "keypress" : "keydown")+this.namespace] = onKeyDown;
rf.Event.bindById(this.fieldId, inputEventHandlers, this);
+ //inputEventHandlers["change"+this.namespace] = function (event) {if (this.focused) {event}};
inputEventHandlers = {};
inputEventHandlers["mousedown"+this.namespace] = onSelectMouseDown;
@@ -107,17 +108,29 @@
};
var onFocus = function (event) {
- this.focused = true;
+ if (!this.focused) {
+ this.__focusValue = this.getInputValue();
+ this.focused = true;
+ this.invokeEvent("focus", rf.getDomElement(this.fieldId), event);
+ }
};
var onBlur = function (event) {
if (this.isMouseDown) {
rf.getDomElement(this.fieldId).focus();
this.isMouseDown = false;
- } else if (this.isVisible && !this.isMouseDown) {
- var _this = this;
- this.timeoutId = window.setTimeout(function(){_this.hide();}, 200);
- this.focused=false;
+ } else if (!this.isMouseDown) {
+ if (this.isVisible) {
+ var _this = this;
+ this.timeoutId = window.setTimeout(function(){_this.hide();}, 200);
+ }
+ if (this.focused) {
+ this.focused=false;
+ this.invokeEvent("blur", rf.getDomElement(this.fieldId), event);
+ if (this.__focusValue != this.getInputValue()) {
+ this.invokeEvent("change", rf.getDomElement(this.fieldId), event);
+ }
+ }
}
};
Modified: trunk/ui/input/ui/src/main/templates/autocomplete.template.xml
===================================================================
--- trunk/ui/input/ui/src/main/templates/autocomplete.template.xml 2010-09-17 07:57:19 UTC (rev 19230)
+++ trunk/ui/input/ui/src/main/templates/autocomplete.template.xml 2010-09-17 08:01:17 UTC (rev 19231)
@@ -23,8 +23,6 @@
onmouseup="#{component.attributes['onmouseup']}"
onmousedown="#{component.attributes['onmousedown']}"
onmousemove="#{component.attributes['onmousemove']}"
- onblur="#{component.attributes['onblur']}"
- onfocus="#{component.attributes['onfocus']}"
onmouseover="#{component.attributes['onmouseover']}"
onmouseout="#{component.attributes['onmouseout']}"
onkeyup="#{component.attributes['onkeyup']}"
@@ -51,8 +49,6 @@
onmousemove="#{component.attributes['onlistmousemove']}"
onmouseover="#{component.attributes['onlistmouseover']}"
onmouseout="#{component.attributes['onlistmouseout']}"
- onblur="#{component.attributes['onlistblur']}"
- onfocus="#{component.attributes['onlistfocus']}"
onkeyup="#{component.attributes['onlistkeyup']}"
onkeydown="#{component.attributes['onlistkeydown']}"
onkeypress="#{component.attributes['onlistkeypress']}"
14 years, 3 months
JBoss Rich Faces SVN: r19230 - modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jQueue.
by richfaces-svn-commits@lists.jboss.org
Author: lfryc(a)redhat.com
Date: 2010-09-17 03:57:19 -0400 (Fri, 17 Sep 2010)
New Revision: 19230
Modified:
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jQueue/QueueModel.java
Log:
max deviation for particular request setup to requestDelay/2
Modified: modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jQueue/QueueModel.java
===================================================================
--- modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jQueue/QueueModel.java 2010-09-17 07:56:40 UTC (rev 19229)
+++ modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jQueue/QueueModel.java 2010-09-17 07:57:19 UTC (rev 19230)
@@ -138,7 +138,7 @@
long beginTime = waitAjax.waitForChangeAndReturn(retrieveBeginTime);
long actualDelay = beginTime - eventTime;
long deviation = Math.abs(actualDelay - requestDelay);
- long maxDeviation = Math.max(100, requestDelay);
+ long maxDeviation = Math.max(100, requestDelay / 2);
checkDeviation(deviation, maxDeviation);
14 years, 3 months
JBoss Rich Faces SVN: r19229 - modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jPoll.
by richfaces-svn-commits@lists.jboss.org
Author: lfryc(a)redhat.com
Date: 2010-09-17 03:56:40 -0400 (Fri, 17 Sep 2010)
New Revision: 19229
Modified:
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jPoll/TestInterval.java
Log:
a4jPoll/TestInterval - reset deviation times between each method
Modified: modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jPoll/TestInterval.java
===================================================================
--- modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jPoll/TestInterval.java 2010-09-17 07:56:01 UTC (rev 19228)
+++ modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/a4jPoll/TestInterval.java 2010-09-17 07:56:40 UTC (rev 19229)
@@ -34,6 +34,7 @@
import org.richfaces.tests.metamer.ftest.annotations.Inject;
import org.richfaces.tests.metamer.ftest.annotations.Templates;
import org.richfaces.tests.metamer.ftest.annotations.Use;
+import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
import static org.jboss.test.selenium.utils.URLUtils.buildUrl;
@@ -64,13 +65,19 @@
long startTime;
long deviationTotal = 0;
- long devicationCount = 0;
+ long deviationCount = 0;
@Override
public URL getTestUrl() {
return buildUrl(contextPath, "faces/components/a4jPoll/simple.xhtml");
}
+ @BeforeMethod
+ public void resetDeviations() {
+ deviationTotal = 0;
+ deviationCount = 0;
+ }
+
@Test
@Use(field = "interval", ints = { 1000 })
public void testClientAllTemplates() throws HttpException, IOException {
@@ -144,12 +151,12 @@
format("Deviation ({0}) is greater than one interval {1}", deviation, interval));
deviationTotal += deviation;
- devicationCount += 1;
+ deviationCount += 1;
}
private void validateAverageDeviation() {
long maximumAvgDeviation = Math.min(interval / 4, 1000);
- long averageDeviation = deviationTotal / devicationCount;
+ long averageDeviation = deviationTotal / deviationCount;
if (seleniumDebug) {
System.out.println("averageDeviation: " + averageDeviation);
14 years, 3 months
JBoss Rich Faces SVN: r19228 - modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest.
by richfaces-svn-commits@lists.jboss.org
Author: lfryc(a)redhat.com
Date: 2010-09-17 03:56:01 -0400 (Fri, 17 Sep 2010)
New Revision: 19228
Modified:
modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/MetamerProperties.java
Log:
added '*' to list of special values taken when parsing template list specified by user
Modified: modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/MetamerProperties.java
===================================================================
--- modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/MetamerProperties.java 2010-09-17 07:55:23 UTC (rev 19227)
+++ modules/tests/metamer/trunk/ftest-source/src/main/java/org/richfaces/tests/metamer/ftest/MetamerProperties.java 2010-09-17 07:56:01 UTC (rev 19228)
@@ -40,7 +40,8 @@
public static List<TemplatesList> getTemplates() {
final String templatesString = System.getProperty("templates");
- if (templatesString == null || "null".equals(templatesString) || "".equals(templatesString)) {
+ if (templatesString == null || "null".equals(templatesString) || "*".equals(templatesString)
+ || "".equals(templatesString)) {
return null;
}
14 years, 3 months
JBoss Rich Faces SVN: r19227 - modules/tests/metamer/trunk/application/src/main/java/org/richfaces/tests/metamer/bean.
by richfaces-svn-commits@lists.jboss.org
Author: lfryc(a)redhat.com
Date: 2010-09-17 03:55:23 -0400 (Fri, 17 Sep 2010)
New Revision: 19227
Modified:
modules/tests/metamer/trunk/application/src/main/java/org/richfaces/tests/metamer/bean/A4JPushEventProcuder.java
Log:
made push event producer logging to debug
Modified: modules/tests/metamer/trunk/application/src/main/java/org/richfaces/tests/metamer/bean/A4JPushEventProcuder.java
===================================================================
--- modules/tests/metamer/trunk/application/src/main/java/org/richfaces/tests/metamer/bean/A4JPushEventProcuder.java 2010-09-17 04:53:40 UTC (rev 19226)
+++ modules/tests/metamer/trunk/application/src/main/java/org/richfaces/tests/metamer/bean/A4JPushEventProcuder.java 2010-09-17 07:55:23 UTC (rev 19227)
@@ -69,6 +69,6 @@
for (PushEventListener listener : listeners) {
listener.onEvent(new EventObject(A4JPushBean.class));
}
- logger.info("push event (listeners: " + listeners.size() + ")");
+ logger.debug("push event (listeners: " + listeners.size() + ")");
}
}
14 years, 3 months
JBoss Rich Faces SVN: r19226 - branches.
by richfaces-svn-commits@lists.jboss.org
Author: nbelaevski
Date: 2010-09-17 00:53:40 -0400 (Fri, 17 Sep 2010)
New Revision: 19226
Removed:
branches/RF-7939-showcase/
Log:
Removed showcase branch for RF-7939
14 years, 3 months