/**
* This file is part of ObjectFabric (http://objectfabric.org).
*
* ObjectFabric is licensed under the Apache License, Version 2.0, the terms
* of which may be found at http://www.apache.org/licenses/LICENSE-2.0.html.
*
* Copyright ObjectFabric Inc.
*
* This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
* WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
*/
package org.objectfabric;
import java.io.File;
import java.io.FileReader;
class FileWriterTIndexedBase extends FileGenerator {
public FileWriterTIndexedBase(Generator generator, String packag) {
super(generator, packag, "TIndexedBase");
}
@Override
protected void header() {
copyright();
wl("package " + Package + ";");
wl();
warning();
}
@Override
protected void body() {
wl("abstract class TIndexedBase extends TObject {");
wl();
wl(" protected TIndexedBase(Resource resource, TObject.Version shared) {");
wl(" super(resource, shared);");
wl(" }");
wl();
StringBuilder model;
try {
File file = new File("src/main/java/org/objectfabric/TIndexedBase.txt");
FileReader reader = new FileReader(file);
char[] chars = new char[(int) file.length()];
reader.read(chars);
reader.close();
model = new StringBuilder(new String(chars));
} catch (Exception ex) {
throw new RuntimeException(ex);
}
// 32
{
StringBuilder copy = new StringBuilder(model.toString());
Utils.replace(copy, "%name%", "32");
write(copy);
wl();
wl();
}
// N
{
StringBuilder copy = new StringBuilder(model.toString());
Utils.replace(copy, "%name%", "N");
write(copy);
wl();
}
wl("}");
}
}