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

Commit 1fdf25c1 authored by Treehugger Robot's avatar Treehugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Use constructors instead of factory methods in HubMessage" into main

parents f13d7f1b 62d90b49
Loading
Loading
Loading
Loading
+3 −4
Original line number Diff line number Diff line
@@ -5157,8 +5157,8 @@ package android.hardware.contexthub {
  }
  @FlaggedApi("android.chre.flags.offload_api") public final class HubMessage implements android.os.Parcelable {
    method @NonNull public static android.hardware.contexthub.HubMessage createMessage(int, @NonNull byte[]);
    method @NonNull public static android.hardware.contexthub.HubMessage createMessage(int, @NonNull byte[], @NonNull android.hardware.contexthub.HubMessage.DeliveryParams);
    ctor public HubMessage(int, @NonNull byte[]);
    ctor public HubMessage(int, @NonNull byte[], @NonNull android.hardware.contexthub.HubMessage.DeliveryParams);
    method public int describeContents();
    method @NonNull public byte[] getMessageBody();
    method public int getMessageType();
@@ -5167,9 +5167,8 @@ package android.hardware.contexthub {
  }
  public static class HubMessage.DeliveryParams {
    ctor public HubMessage.DeliveryParams(boolean);
    method public boolean isResponseRequired();
    method @NonNull public static android.hardware.contexthub.HubMessage.DeliveryParams makeBasic();
    method @NonNull public android.hardware.contexthub.HubMessage.DeliveryParams setResponseRequired(boolean);
  }
  @FlaggedApi("android.chre.flags.offload_api") public final class HubServiceInfo implements android.os.Parcelable {
+20 −38
Original line number Diff line number Diff line
@@ -49,9 +49,14 @@ public final class HubMessage implements Parcelable {
     * HubEndpointSession#sendMessage} to specify the behavior of message delivery.
     */
    public static class DeliveryParams {
        private boolean mResponseRequired;
        private final boolean mResponseRequired;

        private DeliveryParams(boolean responseRequired) {
        /**
         * @param responseRequired If true, message sent with this option will have a {@link
         *     android.hardware.location.ContextHubTransaction.Response} when the peer received the
         *     message.
         */
        public DeliveryParams(boolean responseRequired) {
            mResponseRequired = responseRequired;
        }

@@ -60,23 +65,6 @@ public final class HubMessage implements Parcelable {
            return mResponseRequired;
        }

        /**
         * Set the response requirement for a message. Message sent with this option will have a
         * {@link android.hardware.location.ContextHubTransaction.Response} when the peer received
         * the message. Default is false.
         */
        @NonNull
        public DeliveryParams setResponseRequired(boolean required) {
            mResponseRequired = required;
            return this;
        }

        /** Construct a default delivery option. */
        @NonNull
        public static DeliveryParams makeBasic() {
            return new DeliveryParams(false);
        }

        @Override
        public String toString() {
            StringBuilder out = new StringBuilder();
@@ -105,37 +93,32 @@ public final class HubMessage implements Parcelable {
        }
    }

    private HubMessage(int messageType, byte[] messageBody, DeliveryParams deliveryParams) {
        mMessageType = messageType;
        mMessageBody = messageBody;
        mDeliveryParams = deliveryParams;
    }

    /**
     * Creates a HubMessage object to send to through an endpoint.
     * Default constructor for HubMessage with no response required.
     *
     * @param messageType the endpoint & service dependent message type
     * @param messageBody the byte array message contents
     * @return the HubMessage object
     */
    @NonNull
    public static HubMessage createMessage(int messageType, @NonNull byte[] messageBody) {
        return new HubMessage(messageType, messageBody, DeliveryParams.makeBasic());
    public HubMessage(int messageType, @NonNull byte[] messageBody) {
        Objects.requireNonNull(messageBody, "messageBody cannot be null");
        mMessageType = messageType;
        mMessageBody = messageBody;
        mDeliveryParams = new DeliveryParams(/* responseRequired= */ false);
    }

    /**
     * Creates a HubMessage object to send to through an endpoint.
     *
     * @param messageType the endpoint & service dependent message type
     * @param messageBody the byte array message contents
     * @param deliveryParams The message delivery parameters. See {@link HubMessage.DeliveryParams}
     *     for more details.
     * @return the HubMessage object
     */
    @NonNull
    public static HubMessage createMessage(
    public HubMessage(
            int messageType, @NonNull byte[] messageBody, @NonNull DeliveryParams deliveryParams) {
        return new HubMessage(messageType, messageBody, deliveryParams);
        Objects.requireNonNull(messageBody, "messageBody cannot be null");
        Objects.requireNonNull(deliveryParams, "deliveryParams cannot be null");
        mMessageType = messageType;
        mMessageBody = messageBody;
        mDeliveryParams = deliveryParams;
    }

    /**
@@ -192,8 +175,7 @@ public final class HubMessage implements Parcelable {
        mMessageBody = new byte[msgSize];
        in.readByteArray(mMessageBody);

        mDeliveryParams = DeliveryParams.makeBasic();
        mDeliveryParams.setResponseRequired(in.readInt() == 1);
        mDeliveryParams = new DeliveryParams(in.readInt() == 1);
        mMessageSequenceNumber = in.readInt();
    }

+2 −4
Original line number Diff line number Diff line
@@ -502,10 +502,8 @@ import java.util.List;
    /* package */
    static HubMessage createHubMessage(Message message) {
        boolean isReliable = (message.flags & Message.FLAG_REQUIRES_DELIVERY_STATUS) != 0;
        return HubMessage.createMessage(
                message.type,
                message.content,
                HubMessage.DeliveryParams.makeBasic().setResponseRequired(isReliable));
        return new HubMessage(
                message.type, message.content, new HubMessage.DeliveryParams(isReliable));
    }

    /**