/**
  * Does the document already have an abstract using the given abstract type?
  *
  * @param doc the Proposal Development Document.
  * @param abstractType the abstract type to look for.
  * @return true if the abstract type is found; otherwise false.
  */
 private boolean hasAbstract(ProposalDevelopmentDocument doc, AbstractType abstractType) {
   if (doc != null) {
     List<ProposalAbstract> proposalAbstracts =
         doc.getDevelopmentProposal().getProposalAbstracts();
     for (ProposalAbstract proposalAbstract : proposalAbstracts) {
       if (proposalAbstract.getAbstractTypeCode().equals(abstractType.getAbstractTypeCode())) {
         return true;
       }
     }
   }
   return false;
 }
  @Override
  protected void prepareData(ProposalDevelopmentDocument document) throws Exception {

    ProposalAbstract propsAbstract = new ProposalAbstract();
    propsAbstract.setAbstractTypeCode("14");
    propsAbstract.setAbstractDetails("NSFSuggestedReviewers AbstractDetails");
    ProposalAbstract propsAbstract1 = new ProposalAbstract();
    propsAbstract1.setAbstractTypeCode("12");
    propsAbstract1.setAbstractDetails("AbstractDetails");
    List<ProposalAbstract> proList = new ArrayList<ProposalAbstract>();
    proList.add(propsAbstract);
    proList.add(propsAbstract1);

    propsAbstract.setProposalNumber(document.getDevelopmentProposal().getProposalNumber());
    propsAbstract1.setProposalNumber(document.getDevelopmentProposal().getProposalNumber());
    document.getDevelopmentProposal().setProposalAbstracts(proList);
  }