Putting it all together

Here's the complete code for this scenario solution, showing the getters, setters and changes to the interface inheritance hierarchy:

Figure 1. Complete listing for an entity API with getter and setter methods
package curam.mypackage;

import java.util.Set;

import com.google.inject.ImplementedBy;

import curam.util.persistence.StandardEntity;
import curam.util.type.DateRanged;

/**
 * Description of my wonderful new entity.
 */
@ImplementedBy(MyNewEntityImpl.class)
public interface MyNewEntity extends StandardEntity, DateRanged {

  /**
   * Gets the name.
   *
   * @return the name
   */
  public String getName();

  /**
   * Sets the name.
   *
   * @param value
   *          the name
   */
  public void setName(final String value);

  /**
   * Gets the parent instance of MyParentEntity.
   *
   * @return the parent instance of MyParentEntity, or null if not
   *         yet set
   */
  public MyParentEntity getMyParentEntity();

  /**
   * Sets the parent instance of MyParentEntity.
   *
   * @param value
   *          the parent instance of MyParentEntity
   */
  public void setMyParentEntity(final MyParentEntity value);

  /**
   * Gets the MyChildEntity children of this entity instance.
   *
   * @return the MyChildEntity children of this entity instance
   */
  public Set<MyChildEntity> getMyChildren();

  /**
   * Gets the type of this entity instance.
   *
   * @return the type of this entity instance
   */
  public MYNEWENTITYTYPEEntry getType();

  /**
   * Sets the type of this entity instance.
   *
   * @param value
   *          the type of this entity instance
   */
  public void setType(final MYNEWENTITYTYPEEntry value);

}