Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2e3dec5a authored by Irfan Sheriff's avatar Irfan Sheriff Committed by Android (Google) Code Review
Browse files

Merge "Open network service discovery API"

parents 70eafab9 92784670
Loading
Loading
Loading
Loading
+64 −0
Original line number Diff line number Diff line
@@ -12394,6 +12394,70 @@ package android.net.http {
}
package android.net.nsd {
  public class DnsSdServiceInfo implements android.os.Parcelable {
    ctor public DnsSdServiceInfo();
    method public int describeContents();
    method public java.net.InetAddress getHost();
    method public int getPort();
    method public java.lang.String getServiceName();
    method public java.lang.String getServiceType();
    method public void setHost(java.net.InetAddress);
    method public void setPort(int);
    method public void setServiceName(java.lang.String);
    method public void setServiceType(java.lang.String);
    method public void writeToParcel(android.os.Parcel, int);
    field public static final android.os.Parcelable.Creator CREATOR;
  }
  public class NsdManager {
    method public void deinitialize(android.net.nsd.NsdManager.Channel);
    method public void discoverServices(android.net.nsd.NsdManager.Channel, java.lang.String, android.net.nsd.NsdManager.DnsSdDiscoveryListener);
    method public void initialize(android.content.Context, android.os.Looper, android.net.nsd.NsdManager.ChannelListener);
    method public void registerService(android.net.nsd.NsdManager.Channel, java.lang.String, java.lang.String, int, android.net.nsd.NsdManager.DnsSdRegisterListener);
    method public void resolveService(android.net.nsd.NsdManager.Channel, java.lang.String, java.lang.String, android.net.nsd.NsdManager.DnsSdResolveListener);
    method public void stopServiceDiscovery(android.net.nsd.NsdManager.Channel, android.net.nsd.NsdManager.ActionListener);
    method public void unregisterService(android.net.nsd.NsdManager.Channel, int, android.net.nsd.NsdManager.ActionListener);
    field public static final int ALREADY_ACTIVE = 3; // 0x3
    field public static final int BUSY = 2; // 0x2
    field public static final int ERROR = 0; // 0x0
    field public static final int MAX_REGS_REACHED = 4; // 0x4
    field public static final int UNSUPPORTED = 1; // 0x1
  }
  public static abstract interface NsdManager.ActionListener {
    method public abstract void onFailure(int);
    method public abstract void onSuccess();
  }
  public static class NsdManager.Channel {
  }
  public static abstract interface NsdManager.ChannelListener {
    method public abstract void onChannelConnected(android.net.nsd.NsdManager.Channel);
    method public abstract void onChannelDisconnected();
  }
  public static abstract interface NsdManager.DnsSdDiscoveryListener {
    method public abstract void onFailure(int);
    method public abstract void onServiceFound(android.net.nsd.DnsSdServiceInfo);
    method public abstract void onServiceLost(android.net.nsd.DnsSdServiceInfo);
    method public abstract void onStarted(java.lang.String);
  }
  public static abstract interface NsdManager.DnsSdRegisterListener {
    method public abstract void onFailure(int);
    method public abstract void onServiceRegistered(int, android.net.nsd.DnsSdServiceInfo);
  }
  public static abstract interface NsdManager.DnsSdResolveListener {
    method public abstract void onFailure(int);
    method public abstract void onServiceResolved(android.net.nsd.DnsSdServiceInfo);
  }
}
package android.net.rtp {
  public class AudioCodec {
+13 −7
Original line number Diff line number Diff line
@@ -22,8 +22,8 @@ import android.os.Parcel;
import java.net.InetAddress;

/**
 * Defines a service based on DNS service discovery
 * {@hide}
 * A class representing service information for network service discovery
 * {@see NsdManager}
 */
public class DnsSdServiceInfo implements NetworkServiceInfo, Parcelable {

@@ -40,56 +40,63 @@ public class DnsSdServiceInfo implements NetworkServiceInfo, Parcelable {
    public DnsSdServiceInfo() {
    }

    /** @hide */
    public DnsSdServiceInfo(String sn, String rt, DnsSdTxtRecord tr) {
        mServiceName = sn;
        mServiceType = rt;
        mTxtRecord = tr;
    }

    /** Get the service name */
    @Override
    /** @hide */
    public String getServiceName() {
        return mServiceName;
    }

    /** Set the service name */
    @Override
    /** @hide */
    public void setServiceName(String s) {
        mServiceName = s;
    }

    /** Get the service type */
    @Override
    /** @hide */
    public String getServiceType() {
        return mServiceType;
    }

    /** Set the service type */
    @Override
    /** @hide */
    public void setServiceType(String s) {
        mServiceType = s;
    }

    /** @hide */
    public DnsSdTxtRecord getTxtRecord() {
        return mTxtRecord;
    }

    /** @hide */
    public void setTxtRecord(DnsSdTxtRecord t) {
        mTxtRecord = new DnsSdTxtRecord(t);
    }

    /** Get the host address. The host address is valid for a resolved service. */
    public InetAddress getHost() {
        return mHost;
    }

    /** Set the host address */
    public void setHost(InetAddress s) {
        mHost = s;
    }

    /** Get port number. The port number is valid for a resolved service. */
    public int getPort() {
        return mPort;
    }

    /** Set port number */
    public void setPort(int p) {
        mPort = p;
    }
@@ -147,5 +154,4 @@ public class DnsSdServiceInfo implements NetworkServiceInfo, Parcelable {
                return new DnsSdServiceInfo[size];
            }
        };

}
+251 −83

File changed.

Preview size limit exceeded, changes collapsed.

+14 −0
Original line number Diff line number Diff line
@@ -167,6 +167,18 @@ public class NsdService extends INsdManager.Stub {
                                NsdManager.ERROR);
                    }
                    break;
                case NsdManager.UNREGISTER_SERVICE:
                    if (DBG) Slog.d(TAG, "unregister service");
                    clientInfo = mClients.get(msg.replyTo);
                    int regId = msg.arg1;
                    if (clientInfo.mRegisteredIds.remove(new Integer(regId)) &&
                            unregisterService(regId)) {
                        mReplyChannel.replyToMessage(msg, NsdManager.UNREGISTER_SERVICE_SUCCEEDED);
                    } else {
                        mReplyChannel.replyToMessage(msg, NsdManager.UNREGISTER_SERVICE_FAILED,
                                NsdManager.ERROR);
                    }
                    break;
                case NsdManager.UPDATE_SERVICE:
                    if (DBG) Slog.d(TAG, "Update service");
                    //TODO: implement
@@ -237,6 +249,8 @@ public class NsdService extends INsdManager.Stub {
    }

    public Messenger getMessenger() {
        mContext.enforceCallingOrSelfPermission(android.Manifest.permission.INTERNET,
            "NsdService");
        return new Messenger(mAsyncServiceHandler);
    }