ContinuationData continuationData = new ContinuationData(null); for (PhotoAlbum album : photosContainerResource.getAlbums()) { continuationData.addContainerResource(new IdOnlyContainerResource(album.getId()));
continuationData.addContainerResource(new IdOnlyContainerResource(googleAlbum.getId()));
for (CalendarListEntry calendarData : listResult.getItems()) { CalendarModel model = convertToCalendarModel(calendarData); continuationData.addContainerResource(new IdOnlyContainerResource(calendarData.getId())); calendarModels.add(model);
new PhotosContainerResource(albumBuilder.build(), null); ContinuationData continuationData = new ContinuationData(newPage); subResources.forEach(resource -> continuationData.addContainerResource(resource));
PaginationData nextPageData = new StringPaginationToken(PHOTO_TOKEN_PREFIX + token); ContinuationData continuationData = new ContinuationData(nextPageData); continuationData.addContainerResource(containerResource); return new ExportResult<>( ExportResult.ResultType.CONTINUE,
if (!album.getPrivacy().equals(PRIVATE_ALBUM)) { albumsList.add(new PhotoAlbum(album.getWebUri(), album.getName(), album.getDescription())); continuationData.addContainerResource(new IdOnlyContainerResource(album.getUri()));
private ExportResult<PhotosContainerResource> exportAlbums( TokensAndUrlAuthData authData, Optional<StringPaginationToken> paginationData) { Optional<String> paginationToken = stripTokenPrefix(paginationData, ALBUM_TOKEN_PREFIX); ArrayList<PhotoAlbum> exportAlbums = new ArrayList<>(); // Get albums Connection<Album> connection = getOrCreatePhotosInterface(authData).getAlbums(paginationToken); PaginationData nextPageData = null; String token = connection.getAfterCursor(); if (!Strings.isNullOrEmpty(token)) { nextPageData = new StringPaginationToken(ALBUM_TOKEN_PREFIX + token); } ContinuationData continuationData = new ContinuationData(nextPageData); List<Album> albums = connection.getData(); for (Album album : albums) { exportAlbums.add(new PhotoAlbum(album.getId(), album.getName(), album.getDescription())); continuationData.addContainerResource(new IdOnlyContainerResource(album.getId())); } return new ExportResult<>( ExportResult.ResultType.CONTINUE, new PhotosContainerResource(exportAlbums, null), continuationData); }
@Test public void verifySerializeDeserialize() throws Exception { ObjectMapper objectMapper = new ObjectMapper(); objectMapper.registerSubtypes( ContinuationData.class, IntPaginationToken.class, IdOnlyContainerResource.class); ContinuationData continuationData = new ContinuationData(new IntPaginationToken(100)); continuationData.addContainerResource(new IdOnlyContainerResource("123")); String serialized = objectMapper.writeValueAsString(continuationData); ContinuationData deserialized = objectMapper.readValue(serialized, ContinuationData.class); Assert.assertNotNull(deserialized); Assert.assertEquals(100, ((IntPaginationToken) deserialized.getPaginationData()).getStart()); Assert.assertEquals( "123", ((IdOnlyContainerResource) deserialized.getContainerResources().get(0)).getId()); } }