/** * @throws FinderException * @ejb.interface-method */ public void deletePrivateFile(long file_pk) throws RemoteException { try { privFileHome.remove(new Long(file_pk)); } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
/** @ejb.interface-method */ public void deletePrivatePatient(long patient_pk) throws RemoteException { try { privPatHome.remove(new Long(patient_pk)); } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
/** * Delete a list of instances, i.e., move them to trash bin * * @ejb.interface-method * @param iuids A list of instance uid * @param cascading True to delete the series/study if there's no instance/series * @return a collection of Dataset containing the actuall detetion information per study * @throws RemoteException */ public Collection moveInstancesToTrash(String[] iuids, boolean cascading) throws RemoteException { try { // These instances may belong to multiple studies, // although mostly they should be the same study Map mapStudies = new HashMap(); for (int i = 0; i < iuids.length; i++) { InstanceLocal instance = instHome.findBySopIuid(iuids[i]); SeriesLocal series = instance.getSeries(); StudyLocal study = series.getStudy(); if (!mapStudies.containsKey(study)) mapStudies.put(study, new HashMap()); Map mapSeries = (Map) mapStudies.get(study); if (!mapSeries.containsKey(series)) mapSeries.put(series, new ArrayList()); Collection colInstances = (Collection) mapSeries.get(series); colInstances.add(instance); } List dss = new ArrayList(); Iterator iter = mapStudies.keySet().iterator(); while (iter.hasNext()) { StudyLocal study = (StudyLocal) iter.next(); dss.add(getStudyMgtDataset(study, (Map) mapStudies.get(study))); Iterator iter2 = ((Map) mapStudies.get(study)).keySet().iterator(); while (iter2.hasNext()) { SeriesLocal series = (SeriesLocal) iter2.next(); List instances = (List) ((Map) mapStudies.get(study)).get(series); for (int i = 0; i < instances.size(); i++) { // Delete the instance now, i.e., move to trash bin, // becoming private instance getPrivateInstance((InstanceLocal) instances.get(i), DELETED, null); ((InstanceLocal) instances.get(i)).remove(); } if (series.getInstances().size() == 0 && cascading) { // Delete the series too since there's no instance left getPrivateSeries(series, DELETED, null, false); series.remove(); } else UpdateDerivedFieldsUtils.updateDerivedFieldsOf(series); } if (study.getSeries().size() == 0 && cascading) { // Delete the study too since there's no series left getPrivateStudy(study, DELETED, null, false); study.remove(); } else UpdateDerivedFieldsUtils.updateDerivedFieldsOf(study); } return dss; } catch (CreateException e) { throw new RemoteException(e.getMessage()); } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (FinderException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
/** * @throws FinderException * @ejb.interface-method */ public void deletePrivateFiles(Collection fileDTOs) throws RemoteException { try { for (Iterator iter = fileDTOs.iterator(); iter.hasNext(); ) { privFileHome.remove(new Long(((FileDTO) iter.next()).getPk())); } } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
/** @ejb.interface-method */ public void deleteAll(int privateType) throws RemoteException { try { Collection c = privPatHome.findByPrivateType(privateType); for (Iterator iter = c.iterator(); iter.hasNext(); ) { privPatHome.remove(((PrivatePatientLocal) iter.next()).getPk()); } } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } catch (FinderException e) { throw new RemoteException(e.getMessage()); } }
@Override public CommandResult execute(ParameterContainer parameters) { boolean force = parameters.containsKey(FORCE_KEY); try { String username = parameters.get(USERNAME_KEY); int inp = 121; if (!force) { getLogger().info("Have you revoked the end entity [y/N]? "); try { inp = System.in.read(); } catch (IOException e) { throw new IllegalStateException("Could not read console input."); } } if ((inp == 121) || (inp == 89)) { try { EjbRemoteHelper.INSTANCE .getRemoteSession(EndEntityManagementSessionRemote.class) .deleteUser(getAuthenticationToken(), username); getLogger().info("Deleted end entity with username: "******"ERROR: Not authorized to remove end entity."); return CommandResult.FUNCTIONAL_FAILURE; } catch (RemoveException e) { getLogger().error("ERROR: User could not be removed. " + e.getMessage()); return CommandResult.FUNCTIONAL_FAILURE; } } else { getLogger().info("Deletion aborted!"); getLogger() .info( "Please run '" + new RevokeEndEntityCommand().getMainCommand() + " " + new RevokeEndEntityCommand().getMainCommand() + " " + username + "'."); return CommandResult.FUNCTIONAL_FAILURE; } } catch (NotFoundException e) { getLogger().error("ERROR: No such end entity."); return CommandResult.FUNCTIONAL_FAILURE; } }
/** * @throws FinderException * @ejb.interface-method */ public Collection deletePrivateStudy(long study_pk) throws RemoteException, FinderException { try { PrivateStudyLocal study = privStudyHome.findByPrimaryKey(new Long(study_pk)); ArrayList files = null; PrivatePatientLocal pat = study.getPatient(); study.remove(); if (pat.getStudies().isEmpty()) { pat.remove(); } return files; } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
/** @ejb.interface-method */ public Dataset moveStudyToTrash(long study_pk) throws RemoteException { try { StudyLocal study = studyHome.findByPrimaryKey(new Long(study_pk)); Dataset ds = getStudyMgtDataset(study, null); getPrivateStudy(study, DELETED, null, true); study.remove(); return ds; } catch (CreateException e) { throw new RemoteException(e.getMessage()); } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (FinderException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
/** * @throws FinderException * @ejb.interface-method */ public void deletePrivateSeries(long series_pk) throws RemoteException, FinderException { try { PrivateSeriesLocal series = privSeriesHome.findByPrimaryKey(new Long(series_pk)); PrivateStudyLocal study = series.getStudy(); series.remove(); if (study.getSeries().isEmpty()) { PrivatePatientLocal pat = study.getPatient(); study.remove(); if (pat.getStudies().isEmpty()) { pat.remove(); } } } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
public String delete() { if (name.equalsIgnoreCase("default")) { setErrorMessage("Builtin profile 'Default' can not be deleted."); return null; } try { Ejb.lookupDeviceProfileBean().findByPrimaryKey(name).remove(); setDeleted(); return "deleted"; } catch (RemoveException ex) { setErrorMessage(ex.getMessage()); } catch (EJBException ex) { setErrorMessage(ex.getMessage()); } catch (FinderException ex) { setErrorMessage(ex.getMessage()); } return null; }
/** @ejb.interface-method */ public Dataset moveSeriesToTrash(long series_pk) throws RemoteException { try { SeriesLocal series = seriesHome.findByPrimaryKey(new Long(series_pk)); StudyLocal study = series.getStudy(); Map mapSeries = new HashMap(); mapSeries.put(series, series.getInstances()); Dataset ds = getStudyMgtDataset(series.getStudy(), mapSeries); getPrivateSeries(series, DELETED, null, true); series.remove(); UpdateDerivedFieldsUtils.updateDerivedFieldsOf(study); return ds; } catch (CreateException e) { throw new RemoteException(e.getMessage()); } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (FinderException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
public void remove(Object ejbRef) { EJBLocalObjectImpl localObjectImpl = getEJBLocalObject(ejbRef); if (localObjectImpl == null) { throw new UnsupportedOperationException("Invalid ejb ref"); } Container container = localObjectImpl.getContainer(); EjbDescriptor ejbDesc = container.getEjbDescriptor(); boolean isStatefulBean = false; if (ejbDesc.getType().equals(EjbSessionDescriptor.TYPE)) { EjbSessionDescriptor sessionDesc = (EjbSessionDescriptor) ejbDesc; isStatefulBean = sessionDesc.isStateful(); } if (!isStatefulBean) { // TODO 299 impl may incorrectly call this for stateless/singleton // beans. Until it's fixed just treat it as a no-op. Otherwise, any app acquiring // stateless/singleton references via 299 could fail until bug is fixed. return; // TODO reenable this after bug is fixed // throw new UnsupportedOperationException("ejbRef for ejb " + // ejbDesc.getName() + " is not a stateful bean "); } try { localObjectImpl.remove(); } catch (EJBException e) { LogFacade.getLogger().log(Level.FINE, "EJBException during remove. ", e); } catch (javax.ejb.RemoveException re) { throw new NoSuchEJBException(re.getMessage(), re); } }
/** @ejb.interface-method */ public Collection movePatientToTrash(long pat_pk) throws RemoteException { try { PatientLocal patient = patHome.findByPrimaryKey(new Long(pat_pk)); Collection col = patient.getStudies(); Collection result = new ArrayList(); for (Iterator iter = col.iterator(); iter.hasNext(); ) { result.add(getStudyMgtDataset((StudyLocal) iter.next(), null)); } Dataset ds = patient.getAttributes(true); getPrivatePatient(patient, DELETED, true); patient.remove(); if (result.isEmpty()) result.add(ds); return result; } catch (CreateException e) { throw new RemoteException(e.getMessage()); } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (FinderException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }
/** @ejb.interface-method */ public Dataset moveInstanceToTrash(long instance_pk) throws RemoteException { try { InstanceLocal instance = instHome.findByPrimaryKey(new Long(instance_pk)); Collection colInstance = new ArrayList(); colInstance.add(instance); SeriesLocal series = instance.getSeries(); Map mapSeries = new HashMap(); mapSeries.put(series, colInstance); Dataset ds = getStudyMgtDataset(series.getStudy(), mapSeries); getPrivateInstance(instance, DELETED, null); instance.remove(); UpdateDerivedFieldsUtils.updateDerivedFieldsOf(series); UpdateDerivedFieldsUtils.updateDerivedFieldsOf(series.getStudy()); return ds; } catch (CreateException e) { throw new RemoteException(e.getMessage()); } catch (EJBException e) { throw new RemoteException(e.getMessage()); } catch (FinderException e) { throw new RemoteException(e.getMessage()); } catch (RemoveException e) { throw new RemoteException(e.getMessage()); } }