Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1437)

Side by Side Diff: components/cronet/android/api/src/org/chromium/net/UploadDataProviders.java

Issue 1773123003: Fix javadoc warnings in cronet's UploadDataProviders.java (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | no next file » | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 package org.chromium.net; 5 package org.chromium.net;
6 6
7 import android.os.ParcelFileDescriptor; 7 import android.os.ParcelFileDescriptor;
8 8
9 import java.io.File; 9 import java.io.File;
10 import java.io.FileInputStream; 10 import java.io.FileInputStream;
11 import java.io.IOException; 11 import java.io.IOException;
12 import java.nio.ByteBuffer; 12 import java.nio.ByteBuffer;
13 import java.nio.channels.FileChannel; 13 import java.nio.channels.FileChannel;
14 14
15 /** 15 /**
16 * Provides implementations of {@link UploadDataProvider} for common use cases. 16 * Provides implementations of {@link UploadDataProvider} for common use cases.
17 */ 17 */
18 public final class UploadDataProviders { 18 public final class UploadDataProviders {
19 /** 19 /**
20 * Uploads an entire file. 20 * Uploads an entire file.
21 * 21 *
22 * @param file The file to upload 22 * @param file The file to upload
23 * @return A new UploadDataProvider for the given file
23 */ 24 */
24 public static UploadDataProvider create(final File file) { 25 public static UploadDataProvider create(final File file) {
25 return new FileUploadProvider(new FileChannelProvider() { 26 return new FileUploadProvider(new FileChannelProvider() {
26 @Override 27 @Override
27 public FileChannel getChannel() throws IOException { 28 public FileChannel getChannel() throws IOException {
28 return new FileInputStream(file).getChannel(); 29 return new FileInputStream(file).getChannel();
29 } 30 }
30 }); 31 });
31 } 32 }
32 33
33 /** 34 /**
34 * Uploads an entire file, closing the descriptor when it is no longer neede d. 35 * Uploads an entire file, closing the descriptor when it is no longer neede d.
35 * 36 *
36 * @param fd The file descriptor to upload 37 * @param fd The file descriptor to upload
37 * @throws IllegalArgumentException if {@code fd} is not a file. 38 * @throws IllegalArgumentException if {@code fd} is not a file.
39 * @return A new UploadDataProvider for the given file descriptor
38 */ 40 */
39 public static UploadDataProvider create(final ParcelFileDescriptor fd) { 41 public static UploadDataProvider create(final ParcelFileDescriptor fd) {
40 return new FileUploadProvider(new FileChannelProvider() { 42 return new FileUploadProvider(new FileChannelProvider() {
41 @Override 43 @Override
42 public FileChannel getChannel() throws IOException { 44 public FileChannel getChannel() throws IOException {
43 if (fd.getStatSize() != -1) { 45 if (fd.getStatSize() != -1) {
44 return new ParcelFileDescriptor.AutoCloseInputStream(fd).get Channel(); 46 return new ParcelFileDescriptor.AutoCloseInputStream(fd).get Channel();
45 } else { 47 } else {
46 fd.close(); 48 fd.close();
47 throw new IllegalArgumentException("Not a file: " + fd); 49 throw new IllegalArgumentException("Not a file: " + fd);
48 } 50 }
49 } 51 }
50 }); 52 });
51 } 53 }
52 54
53 /** 55 /**
54 * Uploads a ByteBuffer, from the current {@code buffer.position()} to {@cod e buffer.limit()} 56 * Uploads a ByteBuffer, from the current {@code buffer.position()} to {@cod e buffer.limit()}
57 * @param buffer The data to upload
58 * @return A new UploadDataProvider for the given buffer
55 */ 59 */
56 public static UploadDataProvider create(ByteBuffer buffer) { 60 public static UploadDataProvider create(ByteBuffer buffer) {
57 return new ByteBufferUploadProvider(buffer.slice()); 61 return new ByteBufferUploadProvider(buffer.slice());
58 } 62 }
59 63
60 /** Uploads {@code length} bytes from {@code data}, starting from {@code off set} */ 64 /**
65 * Uploads {@code length} bytes from {@code data}, starting from {@code offs et}
66 * @param data Array containing data to upload
67 * @param offset Offset within data to start with
68 * @param length Number of bytes to upload
69 * @return A new UploadDataProvider for the given data
70 */
61 public static UploadDataProvider create(byte[] data, int offset, int length) { 71 public static UploadDataProvider create(byte[] data, int offset, int length) {
62 return new ByteBufferUploadProvider(ByteBuffer.wrap(data, offset, length )); 72 return new ByteBufferUploadProvider(ByteBuffer.wrap(data, offset, length ));
63 } 73 }
64 74
65 /** Uploads the contents of {@code data} */ 75 /**
76 * Uploads the contents of {@code data}
77 * @param data Array containing data to upload
78 * @return A new UploadDataProvider for the given data
79 */
66 public static UploadDataProvider create(byte[] data) { 80 public static UploadDataProvider create(byte[] data) {
67 return create(data, 0, data.length); 81 return create(data, 0, data.length);
68 } 82 }
69 83
70 private interface FileChannelProvider { FileChannel getChannel() throws IOEx ception; } 84 private interface FileChannelProvider { FileChannel getChannel() throws IOEx ception; }
71 85
72 private static final class FileUploadProvider extends UploadDataProvider { 86 private static final class FileUploadProvider extends UploadDataProvider {
73 private volatile FileChannel mChannel; 87 private volatile FileChannel mChannel;
74 private final FileChannelProvider mProvider; 88 private final FileChannelProvider mProvider;
75 /** Guards initalization of {@code mChannel} */ 89 /** Guards initalization of {@code mChannel} */
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
163 @Override 177 @Override
164 public void rewind(UploadDataSink uploadDataSink) { 178 public void rewind(UploadDataSink uploadDataSink) {
165 mUploadBuffer.position(0); 179 mUploadBuffer.position(0);
166 uploadDataSink.onRewindSucceeded(); 180 uploadDataSink.onRewindSucceeded();
167 } 181 }
168 } 182 }
169 183
170 // Prevent instantiation 184 // Prevent instantiation
171 private UploadDataProviders() {} 185 private UploadDataProviders() {}
172 } 186 }
OLDNEW
« no previous file with comments | « no previous file | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698