if (newInfoItem.getItemOrder() == -2) newInfoItem.setItemOrder(new Integer(item.getSection().getAssociatedItemsCount() - 1));  int diffOrder = newInfoItem.getItemOrder() - item.getItemOrder().intValue(); if(diffOrder < 0) newInfoItem.setItemOrder(newInfoItem.getItemOrder() + 1);
    public Boolean run(Integer infoExecutionCourseCode, Integer itemCode, InfoItem newInfoItem)            throws FenixServiceException {        IItem item = null;        try {            ISuportePersistente sp = PersistenceSupportFactory.getDefaultPersistenceSupport();            IPersistentItem persistentItem = sp.getIPersistentItem();                        item = (IItem) persistentItem.readByOID(Item.class, itemCode);            if (item == null) {                throw new ExistingServiceException();            }                                                  item.edit(newInfoItem.getName(), newInfoItem.getInformation(), newInfoItem.getUrgent(), newInfoItem.getItemOrder());        } catch (ExcepcaoPersistencia e) {            throw new FenixServiceException(e);        }        return new Boolean(true);    }