/**
* Copyright (C) 2010 Olafur Gauti Gudmundsson
* <p/>
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may
* obtain a copy of the License at
* <p/>
* http://www.apache.org/licenses/LICENSE-2.0
* <p/>
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
package org.mongodb.morphia.testmodel;
import org.mongodb.morphia.annotations.Embedded;
import org.mongodb.morphia.annotations.Entity;
import org.mongodb.morphia.annotations.Reference;
import org.mongodb.morphia.testutil.TestEntity;
import java.util.HashSet;
import java.util.Set;
/**
* @author Olafur Gauti Gudmundsson
*/
@Entity("shapeshifters")
public class ShapeShifter extends TestEntity {
@Embedded
private Shape mainShape;
@Reference
private Shape referencedShape;
@Embedded
private Set<Shape> availableShapes;
public ShapeShifter() {
availableShapes = new HashSet<Shape>();
}
public Set<Shape> getAvailableShapes() {
return availableShapes;
}
public void setAvailableShapes(final Set<Shape> availableShapes) {
this.availableShapes = availableShapes;
}
public Shape getMainShape() {
return mainShape;
}
public void setMainShape(final Shape mainShape) {
this.mainShape = mainShape;
}
public Shape getReferencedShape() {
return referencedShape;
}
public void setReferencedShape(final Shape referencedShape) {
this.referencedShape = referencedShape;
}
}