IAuthor tempAuthor = (Author) it1.next();
IAuthor tempAuthor = (IAuthor) it1.next();
    private IAuthor insertAuthor(final InfoAuthor infoAuthor) throws ExcepcaoPersistencia {        IAuthor author = null;        ISuportePersistente sp = null;        IPersistentAuthor persistentAuthor = null;        sp = PersistenceSupportFactory.getDefaultPersistenceSupport();        persistentAuthor = sp.getIPersistentAuthor();        // We have to be aware if the author is a known person or not,        // because if he isn't then, the keyperson fiel will be NULL        if (infoAuthor.getKeyPerson() == null) {            // The author is an external person            List authorsList = persistentAuthor.readAuthorsBySubName(infoAuthor.getAuthor());            Iterator it1 = authorsList.iterator();            while (it1.hasNext()) {                IAuthor tempAuthor = (Author) it1.next();                // Where we'll consider that the set (Author,Organization) is                // unique                // althought it isn't that way in the database                if (identicalAuthors(tempAuthor, infoAuthor)) {                    author = tempAuthor;                    break;                }            }        } else {            // The author is an internal person            author = persistentAuthor.readAuthorByKeyPerson(infoAuthor.getKeyPerson());        }        if (author == null) {            author = InfoAuthor.newDomainFromInfo(infoAuthor);            persistentAuthor.lockWrite(author);        }        return author;    }