LiveScheduleServiceImpl implements LiveScheduleService { MediaPackage getMediaPackageFromSearch(String mediaPackageId) throws LiveScheduleException { SearchQuery query = new SearchQuery().withId(mediaPackageId); SearchResult result = searchService.getByQuery(query); if (result.size() == 0) { logger.debug("The search service doesn't know live mediapackage {}", mediaPackageId); return null; } else if (result.size() > 1) { logger.warn("More than one live mediapackage with id {} returned from search service", mediaPackageId); throw new LiveScheduleException("More than one live mediapackage with id " + mediaPackageId + " found"); } return result.getItems()[0].getMediaPackage(); }  @Override boolean createOrUpdateLiveEvent(String mpId, DublinCoreCatalog episodeDC); @Override boolean deleteLiveEvent(String mpId); @Override boolean updateLiveEventAcl(String mpId, AccessControlList acl); void setDublinCoreService(DublinCoreCatalogService service); void setSearchService(SearchService service); void setSeriesService(SeriesService service); void setServiceRegistry(ServiceRegistry service); void setCaptureAgentService(CaptureAgentStateService service); void setDownloadDistributionService(DownloadDistributionService service); void setWorkspace(Workspace ws); void setAssetManager(AssetManager assetManager); void setAuthorizationService(AuthorizationService service); void setOrganizationService(OrganizationDirectoryService service); static final String CA_PROPERTY_RESOLUTION_URL_PREFIX; static final String REPLACE_ID; static final String REPLACE_FLAVOR; static final String REPLACE_CA_NAME; static final String REPLACE_RESOLUTION; static final String LIVE_STREAMING_URL; static final String LIVE_STREAM_NAME; static final String LIVE_STREAM_MIME_TYPE; static final String LIVE_STREAM_RESOLUTION; static final String LIVE_TARGET_FLAVORS; static final String LIVE_DISTRIBUTION_SERVICE; static final String LIVE_PUBLISH_STREAMING; }
@Test public void testGetMediaPackageFromSearch() throws Exception { URI searchResultURI = LiveScheduleServiceImplTest.class.getResource("/search-result.xml").toURI(); SearchResult searchResult = SearchResultImpl.valueOf(searchResultURI.toURL().openStream()); EasyMock.expect(searchService.getByQuery((SearchQuery) EasyMock.anyObject())).andReturn(searchResult); replayServices(); MediaPackage mp = service.getMediaPackageFromSearch(MP_ID); Assert.assertNotNull(mp); Assert.assertEquals(MP_ID, mp.getIdentifier().toString()); }
@Test public void testGetMediaPackageFromSearchNotFound() throws Exception { URI searchResultURI = LiveScheduleServiceImplTest.class.getResource("/search-result-empty.xml").toURI(); SearchResult searchResult = SearchResultImpl.valueOf(searchResultURI.toURL().openStream()); EasyMock.expect(searchService.getByQuery((SearchQuery) EasyMock.anyObject())).andReturn(searchResult); replayServices(); MediaPackage mp = service.getMediaPackageFromSearch(MP_ID); Assert.assertNull(mp); }