/** * Get list of current image sharing sessions with a contact * * @param contact Contact * @return List of sessions * @throws ServerApiException */ public List<IBinder> getImageSharingSessionsWith(String contact) throws ServerApiException { if (logger.isActivated()) { logger.info("Get image sharing sessions with " + contact); } // Check permission ServerApiUtils.testPermission(); // Test core availability ServerApiUtils.testCore(); try { Vector<ContentSharingSession> list = Core.getInstance().getRichcallService().getCShSessions(contact); ArrayList<IBinder> result = new ArrayList<IBinder>(list.size()); for (int i = 0; i < list.size(); i++) { ContentSharingSession session = list.elementAt(i); IImageSharingSession sessionApi = imageSharingSessions.get(session.getSessionID()); if (sessionApi != null) { result.add(sessionApi.asBinder()); } } return result; } catch (Exception e) { if (logger.isActivated()) { logger.error("Unexpected error", e); } throw new ServerApiException(e.getMessage()); } }