@Override protected void toASCII(StringBuilder ascii, int level) { this.indent(ascii, level); ascii.append(ASCIIPropertyListParser.ARRAY_BEGIN_TOKEN); int indexOfLastNewLine = ascii.lastIndexOf(NEWLINE); for(int i = 0; i < this.array.length; i++) { Class<?> objClass = this.array[i].getClass(); if((objClass.equals(NSDictionary.class) || objClass.equals(NSArray.class) || objClass.equals(NSData.class)) && indexOfLastNewLine != ascii.length()) { ascii.append(NEWLINE); indexOfLastNewLine = ascii.length(); this.array[i].toASCII(ascii, level + 1); } else { if(i != 0) ascii.append(' '); this.array[i].toASCII(ascii, 0); } if(i != this.array.length - 1) ascii.append(ASCIIPropertyListParser.ARRAY_ITEM_DELIMITER_TOKEN); if(ascii.length() - indexOfLastNewLine > ASCII_LINE_LENGTH) { ascii.append(NEWLINE); indexOfLastNewLine = ascii.length(); } } ascii.append(ASCIIPropertyListParser.ARRAY_END_TOKEN); }
@Override protected void toASCIIGnuStep(StringBuilder ascii, int level) { this.indent(ascii, level); ascii.append(ASCIIPropertyListParser.ARRAY_BEGIN_TOKEN); int indexOfLastNewLine = ascii.lastIndexOf(NEWLINE); for(int i = 0; i < this.array.length; i++) { Class<?> objClass = this.array[i].getClass(); if((objClass.equals(NSDictionary.class) || objClass.equals(NSArray.class) || objClass.equals(NSData.class)) && indexOfLastNewLine != ascii.length()) { ascii.append(NEWLINE); indexOfLastNewLine = ascii.length(); this.array[i].toASCIIGnuStep(ascii, level + 1); } else { if(i != 0) ascii.append(' '); this.array[i].toASCIIGnuStep(ascii, 0); } if(i != this.array.length - 1) ascii.append(ASCIIPropertyListParser.ARRAY_ITEM_DELIMITER_TOKEN); if(ascii.length() - indexOfLastNewLine > ASCII_LINE_LENGTH) { ascii.append(NEWLINE); indexOfLastNewLine = ascii.length(); } } ascii.append(ASCIIPropertyListParser.ARRAY_END_TOKEN); } }