/**
* Copyright (C) 2010-2017 Structr GmbH
*
* This file is part of Structr <http://structr.org>.
*
* Structr is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as
* published by the Free Software Foundation, either version 3 of the
* License, or (at your option) any later version.
*
* Structr is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with Structr. If not, see <http://www.gnu.org/licenses/>.
*/
package org.structr.core.entity;
import java.util.Date;
import java.util.List;
import org.structr.common.PropertyView;
import org.structr.common.View;
import org.structr.core.property.BooleanProperty;
import org.structr.core.property.DoubleProperty;
import org.structr.core.property.EndNode;
import org.structr.core.property.EnumProperty;
import org.structr.core.property.ISO8601DateProperty;
import org.structr.core.property.IntProperty;
import org.structr.core.property.LongProperty;
import org.structr.core.property.Property;
import org.structr.core.property.StartNodes;
import org.structr.core.property.StringProperty;
/**
* A simple entity for the most basic tests.
*
*
*
*/
public class TestOne extends AbstractNode {
public enum Status {
One, Two, Three, Four
}
public static final Property<Integer> anInt = new IntProperty("anInt").indexed().indexedWhenEmpty();
public static final Property<Long> aLong = new LongProperty("aLong").indexed().indexedWhenEmpty();
public static final Property<Double> aDouble = new DoubleProperty("aDouble").indexed().indexedWhenEmpty();
public static final Property<Date> aDate = new ISO8601DateProperty("aDate").indexed().indexedWhenEmpty();
public static final Property<Status> anEnum = new EnumProperty<>("anEnum", Status.class).indexed();
public static final Property<String> aString = new StringProperty("aString").indexed().indexedWhenEmpty();
public static final Property<Boolean> aBoolean = new BooleanProperty("aBoolean").indexed();
public static final Property<String> anotherString = new StringProperty("anotherString");
public static final Property<String> replaceString = new StringProperty("replaceString");
public static final Property<String> cleanTestString = new StringProperty("cleanTestString");
public static final Property<String> stringWithQuotes = new StringProperty("stringWithQuotes");
public static final Property<Integer> setTestInteger1 = new IntProperty("setTestInteger1");
public static final Property<Integer> setTestInteger2 = new IntProperty("setTestInteger2");
public static final Property<Integer> setTestInteger3 = new IntProperty("setTestInteger3");
public static final Property<String> alwaysNull = new StringProperty("alwaysNull");
public static final Property<String> doResult = new StringProperty("doResult");
public static final Property<String> stringWithDefault = new StringProperty("stringWithDefault").defaultValue("default value").indexedWhenEmpty();
public static final Property<TestTwo> testTwo = new EndNode<>("testTwo", OneTwoOneToOne.class);
public static final Property<TestThree> testThree = new EndNode<>("testThree", OneThreeOneToOne.class);
public static final Property<TestFour> testFour = new EndNode<>("testFour", OneFourOneToOne.class);
public static final Property<List<TestSix>> manyToManyTestSixs = new StartNodes<>("manyToManyTestSixs", SixOneManyToMany.class);
public static final Property<String> aCreateString = new StringProperty("aCreateString").indexed();
public static final Property<Integer> aCreateInt = new IntProperty("aCreateInt").indexed();
public static final View publicView = new View(TestOne.class, PropertyView.Public,
name, anInt, aDouble, aLong, aDate, createdDate, aString, anotherString, aBoolean, anEnum, stringWithDefault
);
public static final View protectedView = new View(TestOne.class, PropertyView.Protected,
name, anInt, aString
);
}