From bff55f297a5c1f61add01419da9671cfea908c46 Mon Sep 17 00:00:00 2001 From: Alex Blewitt Date: Wed, 16 Mar 2016 01:30:35 +0000 Subject: Bug 489706 - Replace new Integer() with Integer.valueOf() There are a lot of new Integer() calls in the P2 codebase, which results in many duplicate values of Integer being stored, particularly when performing updates or checks. Integer.valueOf() performs this caching already, which means that it's unnecessary to call new Integer() and instead can call Integer.valueOf(). In the places where the int value is being used directly, the call can be further optimised to Integer.parseInt() instead. Replace calls to new Integer() with Integer.valueOf() or .parseInt() as appropriate. Change-Id: Ic760e66084c856fc90cb7c8a358007c975213638 Signed-off-by: Alex Blewitt --- .../org/eclipse/equinox/internal/p2/metadata/expression/Member.java | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/expression/Member.java') diff --git a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/expression/Member.java b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/expression/Member.java index 59e82a0f2..15e8935f4 100644 --- a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/expression/Member.java +++ b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/expression/Member.java @@ -1,5 +1,5 @@ /******************************************************************************* - * Copyright (c) 2009, 2010 Cloudsmith Inc. and others. + * Copyright (c) 2009, 2016 Cloudsmith Inc. and others. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at @@ -105,7 +105,6 @@ public abstract class Member extends Unary { } public static class LengthMember extends Member { - private static final Integer ZERO = new Integer(0); LengthMember(Expression operand) { super(operand, "length", Expression.emptyArray); //$NON-NLS-1$ @@ -113,7 +112,7 @@ public abstract class Member extends Unary { public Object evaluate(IEvaluationContext context) { int len = getLength(operand.evaluate(context)); - return len == 0 ? ZERO : new Integer(len); + return Integer.valueOf(len); } int getLength(Object val) { -- cgit v1.2.3