Author: markt Date: Wed Dec 31 04:36:44 2008 New Revision: 730382 URL: http://svn.apache.org/viewvc?rev=730382&view=rev Log: Fix svn properties. Patch by sebb
Modified: tomcat/trunk/TOMCAT-7-RELEASE-PLAN.txt (contents, props changed) tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/SimpleCoordinator.java (contents, props changed) tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractQueryReport.java (props changed) tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/mbeans-descriptors.xml (props changed) tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/pool/interceptor/TestInterceptor.java (props changed) tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGetConnection.java (props changed) tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestInterceptorShortName.java (props changed) tomcat/trunk/test/org/apache/el/parser/TestELParser.java (contents, props changed) Modified: tomcat/trunk/TOMCAT-7-RELEASE-PLAN.txt URL: http://svn.apache.org/viewvc/tomcat/trunk/TOMCAT-7-RELEASE-PLAN.txt?rev=730382&r1=730381&r2=730382&view=diff ============================================================================== --- tomcat/trunk/TOMCAT-7-RELEASE-PLAN.txt (original) +++ tomcat/trunk/TOMCAT-7-RELEASE-PLAN.txt Wed Dec 31 04:36:44 2008 @@ -1,48 +1,48 @@ -================================================================================ - 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. -================================================================================ - -$Id: $ - - ===================================================== - An outline plan for the first stable Tomcat 7 release - ===================================================== - -1. Update trunk with new API from Servlet Spec 3.0 PR - -2. Provide NOOP implementations with TODO SRV3 markers so it will build - -3. Implement all the new Servlet 3 features - -4. Do an alpha realease (from trunk) - - Create tc7.0.x\tags to hold release tags - - Create Bugzilla project - - Add to web site - - Update Wiki version status page - -5. Fix issues as they get reported - -6. Update for next public draft(s) of the spec if any. - -7. Aim for first stable TC7 release with final release of Servlet 3 spec - - Create tc7.0.x\trunk from trunk at first stable release - -8. Nice to haves in first Tomcat 7 stable release - - Remove old, unused code - - Clean up internal API (eg remove unused params from methods) - - Code needs to be ID'd and deprecated in 6.x first - - Support for standalone EL - - http://issues.apache.org/bugzilla/show_bug.cgi?id=43819 +================================================================================ + 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. +================================================================================ + +$Id: $ + + ===================================================== + An outline plan for the first stable Tomcat 7 release + ===================================================== + +1. Update trunk with new API from Servlet Spec 3.0 PR + +2. Provide NOOP implementations with TODO SRV3 markers so it will build + +3. Implement all the new Servlet 3 features + +4. Do an alpha realease (from trunk) + - Create tc7.0.x\tags to hold release tags + - Create Bugzilla project + - Add to web site + - Update Wiki version status page + +5. Fix issues as they get reported + +6. Update for next public draft(s) of the spec if any. + +7. Aim for first stable TC7 release with final release of Servlet 3 spec + - Create tc7.0.x\trunk from trunk at first stable release + +8. Nice to haves in first Tomcat 7 stable release + - Remove old, unused code + - Clean up internal API (eg remove unused params from methods) + - Code needs to be ID'd and deprecated in 6.x first + - Support for standalone EL + - http://issues.apache.org/bugzilla/show_bug.cgi?id=43819 Propchange: tomcat/trunk/TOMCAT-7-RELEASE-PLAN.txt ------------------------------------------------------------------------------ svn:eol-style = native Modified: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/SimpleCoordinator.java URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/SimpleCoordinator.java?rev=730382&r1=730381&r2=730382&view=diff ============================================================================== --- tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/SimpleCoordinator.java (original) +++ tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/SimpleCoordinator.java Wed Dec 31 04:36:44 2008 @@ -1,118 +1,118 @@ -/* - * 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 - */ -package org.apache.catalina.tribes.group.interceptors; - -import static java.util.concurrent.TimeUnit.MILLISECONDS; - -import java.util.Arrays; -import java.util.concurrent.atomic.AtomicBoolean; - -import org.apache.catalina.tribes.ChannelException; -import org.apache.catalina.tribes.Member; -import org.apache.catalina.tribes.group.AbsoluteOrder; -import org.apache.catalina.tribes.group.ChannelInterceptorBase; - -/** - * A dinky coordinator, just uses a sorted version of the member array. - * - * @author rnewson - * - */ -public class SimpleCoordinator extends ChannelInterceptorBase { - - private Member[] view; - - private AtomicBoolean membershipChanged = new AtomicBoolean(); - - private void membershipChanged() { - membershipChanged.set(true); - } - - @Override - public void memberAdded(final Member member) { - super.memberAdded(member); - membershipChanged(); - installViewWhenStable(); - } - - @Override - public void memberDisappeared(final Member member) { - super.memberDisappeared(member); - membershipChanged(); - installViewWhenStable(); - } - - /** - * Override to receive view changes. - * - * @param view - */ - protected void viewChange(final Member[] view) { - } - - @Override - public void start(int svc) throws ChannelException { - super.start(svc); - installViewWhenStable(); - } - - private void installViewWhenStable() { - int stableCount = 0; - - while (stableCount < 10) { - if (membershipChanged.compareAndSet(true, false)) { - stableCount = 0; - } else { - stableCount++; - } - try { - MILLISECONDS.sleep(250); - } catch (final InterruptedException e) { - Thread.currentThread().interrupt(); - } - } - - final Member[] members = getMembers(); - final Member[] view = new Member[members.length+1]; - System.arraycopy(members, 0, view, 0, members.length); - view[members.length] = getLocalMember(false); - Arrays.sort(view, AbsoluteOrder.comp); - if (Arrays.equals(view, this.view)) { - return; - } - this.view = view; - viewChange(view); - } - - @Override - public void stop(int svc) throws ChannelException { - super.stop(svc); - } - - public Member[] getView() { - return view; - } - - public Member getCoordinator() { - return view == null ? null : view[0]; - } - - public boolean isCoordinator() { - return view == null ? false : getLocalMember(false).equals( - getCoordinator()); - } - -} +/* + * 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 + */ +package org.apache.catalina.tribes.group.interceptors; + +import static java.util.concurrent.TimeUnit.MILLISECONDS; + +import java.util.Arrays; +import java.util.concurrent.atomic.AtomicBoolean; + +import org.apache.catalina.tribes.ChannelException; +import org.apache.catalina.tribes.Member; +import org.apache.catalina.tribes.group.AbsoluteOrder; +import org.apache.catalina.tribes.group.ChannelInterceptorBase; + +/** + * A dinky coordinator, just uses a sorted version of the member array. + * + * @author rnewson + * + */ +public class SimpleCoordinator extends ChannelInterceptorBase { + + private Member[] view; + + private AtomicBoolean membershipChanged = new AtomicBoolean(); + + private void membershipChanged() { + membershipChanged.set(true); + } + + @Override + public void memberAdded(final Member member) { + super.memberAdded(member); + membershipChanged(); + installViewWhenStable(); + } + + @Override + public void memberDisappeared(final Member member) { + super.memberDisappeared(member); + membershipChanged(); + installViewWhenStable(); + } + + /** + * Override to receive view changes. + * + * @param view + */ + protected void viewChange(final Member[] view) { + } + + @Override + public void start(int svc) throws ChannelException { + super.start(svc); + installViewWhenStable(); + } + + private void installViewWhenStable() { + int stableCount = 0; + + while (stableCount < 10) { + if (membershipChanged.compareAndSet(true, false)) { + stableCount = 0; + } else { + stableCount++; + } + try { + MILLISECONDS.sleep(250); + } catch (final InterruptedException e) { + Thread.currentThread().interrupt(); + } + } + + final Member[] members = getMembers(); + final Member[] view = new Member[members.length+1]; + System.arraycopy(members, 0, view, 0, members.length); + view[members.length] = getLocalMember(false); + Arrays.sort(view, AbsoluteOrder.comp); + if (Arrays.equals(view, this.view)) { + return; + } + this.view = view; + viewChange(view); + } + + @Override + public void stop(int svc) throws ChannelException { + super.stop(svc); + } + + public Member[] getView() { + return view; + } + + public Member getCoordinator() { + return view == null ? null : view[0]; + } + + public boolean isCoordinator() { + return view == null ? false : getLocalMember(false).equals( + getCoordinator()); + } + +} Propchange: tomcat/trunk/java/org/apache/catalina/tribes/group/interceptors/SimpleCoordinator.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/AbstractQueryReport.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: tomcat/trunk/modules/jdbc-pool/java/org/apache/tomcat/jdbc/pool/interceptor/mbeans-descriptors.xml ------------------------------------------------------------------------------ svn:eol-style = native Propchange: tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/pool/interceptor/TestInterceptor.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestGetConnection.java ------------------------------------------------------------------------------ svn:eol-style = native Propchange: tomcat/trunk/modules/jdbc-pool/test/org/apache/tomcat/jdbc/test/TestInterceptorShortName.java ------------------------------------------------------------------------------ svn:eol-style = native Modified: tomcat/trunk/test/org/apache/el/parser/TestELParser.java URL: http://svn.apache.org/viewvc/tomcat/trunk/test/org/apache/el/parser/TestELParser.java?rev=730382&r1=730381&r2=730382&view=diff ============================================================================== --- tomcat/trunk/test/org/apache/el/parser/TestELParser.java (original) +++ tomcat/trunk/test/org/apache/el/parser/TestELParser.java Wed Dec 31 04:36:44 2008 @@ -1,57 +1,57 @@ -/* - * 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. - */ - -package org.apache.el.parser; - -import javax.el.ValueExpression; - -import org.apache.el.ExpressionFactoryImpl; -import org.apache.jasper.el.ELContextImpl; - -import junit.framework.TestCase; - -public class TestELParser extends TestCase { - - public void testBug45511() { - // Test cases provided by OP - assertEquals("true", evaluateExpression("${empty ('')}")); - assertEquals("true", evaluateExpression("${empty('')}")); - assertEquals("false", evaluateExpression("${(true) and (false)}")); - assertEquals("false", evaluateExpression("${(true)and(false)}")); - } - - - public void testBug42565() { - // Test cases provided by OP - assertEquals("false", evaluateExpression("${false?true:false}")); - } - - - public void testMisc() { - // From bug 45451 - not a parser bug - assertEquals("\\", evaluateExpression("\\\\")); - } - - - private String evaluateExpression(String expression) { - ELContextImpl ctx = new ELContextImpl(); - ExpressionFactoryImpl exprFactory = new ExpressionFactoryImpl(); - ValueExpression ve = - exprFactory.createValueExpression(ctx, expression, String.class ); - return (String) ve.getValue(ctx); - } -} +/* + * 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. + */ + +package org.apache.el.parser; + +import javax.el.ValueExpression; + +import org.apache.el.ExpressionFactoryImpl; +import org.apache.jasper.el.ELContextImpl; + +import junit.framework.TestCase; + +public class TestELParser extends TestCase { + + public void testBug45511() { + // Test cases provided by OP + assertEquals("true", evaluateExpression("${empty ('')}")); + assertEquals("true", evaluateExpression("${empty('')}")); + assertEquals("false", evaluateExpression("${(true) and (false)}")); + assertEquals("false", evaluateExpression("${(true)and(false)}")); + } + + + public void testBug42565() { + // Test cases provided by OP + assertEquals("false", evaluateExpression("${false?true:false}")); + } + + + public void testMisc() { + // From bug 45451 - not a parser bug + assertEquals("\\", evaluateExpression("\\\\")); + } + + + private String evaluateExpression(String expression) { + ELContextImpl ctx = new ELContextImpl(); + ExpressionFactoryImpl exprFactory = new ExpressionFactoryImpl(); + ValueExpression ve = + exprFactory.createValueExpression(ctx, expression, String.class ); + return (String) ve.getValue(ctx); + } +} Propchange: tomcat/trunk/test/org/apache/el/parser/TestELParser.java ------------------------------------------------------------------------------ svn:eol-style = native --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org