001 /* 002 * $Id: Indexed.java 1103095 2011-05-14 13:18:29Z simonetripodi $ 003 * Licensed to the Apache Software Foundation (ASF) under one 004 * or more contributor license agreements. See the NOTICE file 005 * distributed with this work for additional information 006 * regarding copyright ownership. The ASF licenses this file 007 * to you under the Apache License, Version 2.0 (the 008 * "License"); you may not use this file except in compliance 009 * with the License. You may obtain a copy of the License at 010 * 011 * http://www.apache.org/licenses/LICENSE-2.0 012 * 013 * Unless required by applicable law or agreed to in writing, 014 * software distributed under the License is distributed on an 015 * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY 016 * KIND, either express or implied. See the License for the 017 * specific language governing permissions and limitations 018 * under the License. 019 */ 020 package org.apache.commons.ognl.test.objects; 021 022 import java.util.*; 023 024 public class Indexed 025 extends BaseIndexed 026 { 027 private String[] _values = new String[] { "foo", "bar", "baz" }; 028 029 private List _list = new ArrayList(); 030 031 private ListSource _source = new ListSourceImpl(); 032 033 private Map _props = new HashMap(); 034 035 public Indexed() 036 { 037 _list.add( new Integer( 1 ) ); 038 _list.add( new Integer( 2 ) ); 039 _list.add( new Integer( 3 ) ); 040 041 _source.addValue( new Bean2() ); 042 } 043 044 public Indexed( String[] values ) 045 { 046 _values = values; 047 } 048 049 /* Indexed property "_values" */ 050 public String[] getValues() 051 { 052 return _values; 053 } 054 055 public void setValues( String[] value ) 056 { 057 _values = value; 058 } 059 060 /** 061 * This method returns the string from the array and appends "xxx" to distinguish the "get" method from the direct 062 * array access. 063 */ 064 public String getValues( int index ) 065 { 066 return _values[index] + "xxx"; 067 } 068 069 public void setValues( int index, String value ) 070 { 071 if ( value.endsWith( "xxx" ) ) 072 { 073 _values[index] = value.substring( 0, value.length() - 3 ); 074 } 075 else 076 { 077 _values[index] = value; 078 } 079 } 080 081 public Collection getList() 082 { 083 return _list; 084 } 085 086 public String getTitle( int count ) 087 { 088 return "Title count " + count; 089 } 090 091 public ListSource getSource() 092 { 093 return _source; 094 } 095 096 public void setProperty( String property, Object value ) 097 { 098 _props.put( property, value ); 099 } 100 101 public Object getProperty( String property ) 102 { 103 return _props.get( property ); 104 } 105 }