package bluej.testmgr.record;

import bluej.pkgmgr.PkgMgrFrame;


| An invoker record for "get" operations on array elements. |* * @author Davin McCall */ public class ArrayElementGetRecord extends InvokerRecord{ /** The invoker record for the inspector where the Get button was pressed, that resulted in the creation of this GetInvokerRecord. private InvokerRecord parentIr;
| Index of the element to get | private int elementIndex;
| Type of the element | private String elementType;
| Name of the object as it appears on the object bench | private String objName;
| Type of the object (on the bench) | private String objType; public ArrayElementGetRecord(String elementType, int elementIndex, InvokerRecord parentIr) { this.parentIr = parentIr; this.elementType = elementType; this.elementIndex = elementIndex; parentIr.incUsageCount(); } @Override public boolean hasVoidResult() { return false; }
| Give this method invoker record a name on the object bench. | | @param name Name of the object a it appears on the object bench. | @param type The type that the object is on the actual bench. | @Override public void setBenchName(String name, String type) { objName = name; objType = type; }
| Construct a declaration for any objects constructed | by this invoker record. | | @return a String representing the object declaration | src or null if there is none. | @Override public String toFixtureDeclaration(String firstIndent) { return firstIndent + fieldDeclarationStart + objType + " " + objName + statementEnd; }
| Construct a portion of an initialisation method for | this invoker record. | | @return a String representing the object initialisation | src or null if there is none. | @Override public String toFixtureSetup(String secondIndent) { return secondIndent + objName + " = " + toExpression() + statementEnd; }
| Construct a portion of a test method for this | invoker record. | | @return a String representing the test method src | @Override public String toTestMethod(PkgMgrFrame pmf, String secondIndent) { return secondIndent + objType + " " + objName + " = " + toExpression() + statementEnd; } @Override public String toExpression() { if (! objType.equals(elementType)) { return "((" + objType + ") " + parentIr.toExpression() + "[" + elementIndex + "])"; } else { return parentIr.toExpression() + "[" + elementIndex + "]"; } } }

.   ArrayElementGetRecord
.   hasVoidResult
.   setBenchName
.   toFixtureDeclaration
.   toFixtureSetup
.   toTestMethod
.   toExpression




106 neLoCode + 19 LoComm