Merge "Add a method to create ParcelFileDescriptors from DatagramSockets."

This commit is contained in:
Chia-chi Yeh
2011-05-12 16:55:58 -07:00
committed by Android (Google) Code Review
2 changed files with 16 additions and 0 deletions

View File

@@ -13916,6 +13916,7 @@ package android.os {
method public int describeContents();
method public int detachFd();
method public static android.os.ParcelFileDescriptor dup(java.io.FileDescriptor) throws java.io.IOException;
method public static android.os.ParcelFileDescriptor fromDatagramSocket(java.net.DatagramSocket);
method public static android.os.ParcelFileDescriptor fromSocket(java.net.Socket);
method public int getFd();
method public java.io.FileDescriptor getFileDescriptor();

View File

@@ -21,6 +21,7 @@ import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.net.DatagramSocket;
import java.net.Socket;
/**
@@ -141,6 +142,20 @@ public class ParcelFileDescriptor implements Parcelable {
return fd != null ? new ParcelFileDescriptor(fd) : null;
}
/**
* Create a new ParcelFileDescriptor from the specified DatagramSocket.
*
* @param datagramSocket The DatagramSocket whose FileDescriptor is used
* to create a new ParcelFileDescriptor.
*
* @return A new ParcelFileDescriptor with the FileDescriptor of the
* specified DatagramSocket.
*/
public static ParcelFileDescriptor fromDatagramSocket(DatagramSocket datagramSocket) {
FileDescriptor fd = datagramSocket.getFileDescriptor$();
return fd != null ? new ParcelFileDescriptor(fd) : null;
}
/**
* Create two ParcelFileDescriptors structured as a data pipe. The first
* ParcelFileDescriptor in the returned array is the read side; the second