/* * 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. */ /** * @author Maxim V. Berkultsev */ package org.apache.harmony.beans.tests.support; import java.util.Iterator; import java.util.TooManyListenersException; import java.util.Vector; /** * @author Maxim V. Berkultsev */ public class SampleBean { private String text = null; private String otherText = null; private SampleBean bean = null; private int x = 0; private double[] smth; private Object[] smthObjs; private Vector<SampleListener> listeners; public SampleBean() { this.text = null; } public SampleBean(String text) { this.text = text; this.otherText = "Constructor with args"; } protected SampleBean(String text, SampleBean bean) { this.text = text; this.bean = bean; } public String getText() { return text; } public void setText(String text) { this.text = text; } public SampleBean getObject() { return bean; } public void setObject(SampleBean bean) { this.bean = bean; } public String getOtherText() { return otherText; } public void setOtherText(String value) { this.otherText = value; } public int getX() { return x; } public void setX(int value) { this.x = value; } public double getSmthByIdx(int i) { return smth[i]; } public void setSmthByIdx(int i, double value) { smth[i] = value; } public double[] getSmth() { return this.smth; } public void setSmth(double[] value) { this.smth = value; } public Object getObjectByIdx(int i) { return smthObjs[i]; } public void setObjectByIdx(int i, Object value) { this.smthObjs[i] = value; } public Object[] getObjects() { return smthObjs; } public void setObjects(Object[] value) { this.smthObjs = value; } @Override public boolean equals(Object other) { if (other instanceof SampleBean) { SampleBean sb = (SampleBean) other; if ((sb.bean == null) && (bean == null)) { return true; } else if ((sb.bean != null) && (bean != null)) { return true; } else { return false; } } return false; } public static SampleBean create(String text, SampleBean bean) { return new SampleBean(text, bean); } public void addSampleListener(SampleListener listener) throws TooManyListenersException { if (listeners == null) { listeners = new Vector<SampleListener>(); } if (listeners.size() >= 100) { throw new TooManyListenersException( "Number of listeners could not exceed 100"); } listeners.add(listener); } public void removeSampleListener(SampleListener listener) { if (listeners != null) { listeners.remove(listener); } } public SampleListener[] getSampleListeners() { if (listeners != null) { SampleListener[] result = new SampleListener[listeners.size()]; Iterator<SampleListener> i = listeners.iterator(); int idx = 0; while (i.hasNext()) { result[idx++] = i.next(); } return result; } return new SampleListener[] {}; } }