Path: blob/master/test/functional/Jsr292/src/com/ibm/j9/jsr292/SamePackageExample.java
6007 views
/*******************************************************************************1* Copyright (c) 2001, 2018 IBM Corp. and others2*3* This program and the accompanying materials are made available under4* the terms of the Eclipse Public License 2.0 which accompanies this5* distribution and is available at https://www.eclipse.org/legal/epl-2.0/6* or the Apache License, Version 2.0 which accompanies this distribution and7* is available at https://www.apache.org/licenses/LICENSE-2.0.8*9* This Source Code may also be made available under the following10* Secondary Licenses when the conditions for such availability set11* forth in the Eclipse Public License, v. 2.0 are satisfied: GNU12* General Public License, version 2 with the GNU Classpath13* Exception [1] and GNU General Public License, version 2 with the14* OpenJDK Assembly Exception [2].15*16* [1] https://www.gnu.org/software/classpath/license.html17* [2] http://openjdk.java.net/legal/assembly-exception.html18*19* SPDX-License-Identifier: EPL-2.0 OR Apache-2.0 OR GPL-2.0 WITH Classpath-exception-2.0 OR LicenseRef-GPL-2.0 WITH Assembly-exception20*******************************************************************************/21package com.ibm.j9.jsr292;2223import java.lang.invoke.MethodHandles;24import java.lang.invoke.MethodHandles.Lookup;2526/**27* All the fields, constructors and methods in this class are used by test cases that require fields, methods, and constructors of28* various behavior from a class in the same package as the test class.29*30* @author mesbah31*32*/33public class SamePackageExample {34public static Lookup publicLookupObjectSamePackage = MethodHandles.publicLookup().in(SamePackageExample.class);35public static int publicStaticField_doNotDeclareInSubClasses;3637public int nonStaticPublicField;38public final int nonStaticFinalPublicField;39public static int staticPublicField;40public final static int staticFinalPublicField = 42;4142private int nonStaticPrivateField;43private static int staticPrivateField;4445protected int nonStaticProtectedField;4647public SamePackageExample() {48super();49nonStaticFinalPublicField = 24;50}5152public SamePackageExample(int a, int b) {53this.nonStaticPublicField = a + b;54this.nonStaticFinalPublicField = a + b;55}5657public int addPublic(int a, int b) {return a+b;}58private int addPrivate(int a, int b) {return a+b;}5960public static int addPublicStatic (int a,int b) {return a+b;}61private static int addPrivateStatic (int a,int b) {return a+b;}62protected static int addProtectedStatic(int a, int b) {return a+b;}6364protected int addProtected(int a, int b) {return a+b;}6566public int addPublic_Super(int a, int b) {return a+b+5;}6768public static Lookup getLookup() {69return MethodHandles.lookup();70}7172public class SamePackageInnerClass{7374public int nonStaticPublicField_Inner1;7576private int nonStaticPrivateField_Inner1;7778protected int nonStaticProtectedField_Inner1;7980public int addPublicInner(int a, int b) { return a+b; }8182private int addPrivateInner(int a, int b) { return a+b; }8384public Lookup getLookup() {85return MethodHandles.lookup();86}8788public class SamePackageInnerClass_Nested_Level2 {8990public int nonStaticPublicField_Inner2;9192private int nonStaticPrivateField_Inner2;9394protected int nonStaticProtectedField_Inner2;9596public int addPublicInner_Level2(int a, int b) { return a+b; }9798public Lookup getLookup() {99return MethodHandles.lookup();100}101}102}103104public class SamePackageInnerClass2{105106public int nonStaticPublicField_Inner12;107public Lookup getLookup() {108return MethodHandles.lookup();109}110111public class SamePackageInnerClass2_Nested_Level2 {112113public int nonStaticPublicField_Inner22;114115private int nonStaticPrivateField_Inner22;116117protected int nonStaticProtectedField_Inner22;118119public Lookup getLookup() {120return MethodHandles.lookup();121}122}123124public class SamePackageInnerClass2_Nested_Level2_SubOf_Inner1 extends SamePackageInnerClass {125public int addPublicInner(int a, int b) { return a+b+20; } // overridden method126}127}128129protected class SamePackageInnerClass_Protected {130131protected Lookup getLookup() {132return MethodHandles.lookup();133}134135public int addPublicInner(int a, int b) { return a+b; }136protected int addProtectedInner(int a, int b) { return a+b; }137138protected class SamePackageInnerClass_Nested_Level2 {139public Lookup getLookup() {140return MethodHandles.lookup();141}142public int addPublicInner_Level2(int a, int b) { return a+b; }143protected int addProtectedInner_Level2(int a, int b) { return a+b; }144}145}146147static class SamePackageInnerClass_Static {148public static Lookup getLookup () {149return MethodHandles.lookup();150}151}152153154public String arrayToString(String[] o) {155String s = "[";156157if ( o == null || o.length == 0 ) {158return s + "]";159}160161for ( int i = 0 ; i < o.length ; i++ ) {162s += o[i];163if ( i + 1 < o.length ) {164s += ",";165}166}167168return s + "]";169}170171public int getLength(String[] o) {172return o.length;173}174175public int getLength(int[] o) {176return o.length;177}178179public int getLength(double[] o) {180return o.length;181}182183public int getLength(char[] o) {184return o.length;185}186187public int getLength(float[] o) {188return o.length;189}190191public int getLength(boolean[] o) {192return o.length;193}194195public int getLength(byte[] o) {196return o.length;197}198199public int getLength(short[] o) {200return o.length;201}202203public int getLength(long[] o) {204return o.length;205}206207public static int getLengthStatic(String[] o) {208return o.length;209}210211public int addPublicVariableArity(int... n) {212int sum = 0 ;213for ( int i = 0 ; i < n.length ; i++ ) {214sum += n[i];215}216return sum;217}218219public int addPublicVariableArity(Object... n) {220int sum = 0 ;221for ( int i = 0 ; i < n.length ; i++ ) {222sum += (int)n[i];223}224return sum;225}226227public void takeVariableArityObject(Object... n) {}228229public static String returnOne() {230return "1";231}232233public static String returnTwo() {234return "2";235}236237public static String returnThree() {238return "3";239}240241public int[] makeArray(int...args) { return args; }242243public String arrayToString(Object [] o) {244String s = "[";245246if ( o == null || o.length == 0 ) {247return s + "]";248}249250for ( int i = 0 ; i < o.length ; i++ ) {251s += o[i];252if ( i + 1 < o.length ) {253s += ",";254}255}256257return s + "]";258}259260public String toOjectArrayString(Object objArray) {261Object [] o = (Object[])objArray;262String s = "[";263264if ( o == null || o.length == 0 ) {265return s + "]";266}267268for ( int i = 0 ; i < o.length ; i++ ) {269s += o[i];270if ( i + 1 < o.length ) {271s += ",";272}273}274275return s + "]";276}277278/*Variable arity constructor example*/279public SamePackageExample(int...n) {280nonStaticFinalPublicField = 24;281}282283public boolean isReceiverNull() { return this == null; }284public String toString() { return "SamePackageExample.toString()" + ((this == null) ? " null" : "notnull"); }285}286287288