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

Commit 267ef30c authored by Neil Fuller's avatar Neil Fuller Committed by android-build-merger
Browse files

resolve merge conflicts of 5e1d95b0 to stage-aosp-master

am: 79d42a61

Change-Id: I8dcebef6e996dfaec01934552aa0f3d6f8c9053a
parents ce2b842a 79d42a61
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -100,6 +100,7 @@ java_library {
        "core/java/android/app/backup/ISelectBackupTransportCallback.aidl",
        "core/java/android/app/slice/ISliceManager.aidl",
        "core/java/android/app/slice/ISliceListener.aidl",
        "core/java/android/app/timedetector/ITimeDetectorService.aidl",
        "core/java/android/app/timezone/ICallback.aidl",
        "core/java/android/app/timezone/IRulesManager.aidl",
        "core/java/android/app/usage/ICacheQuotaService.aidl",
+8 −0
Original line number Diff line number Diff line
@@ -24,6 +24,7 @@ import android.app.admin.IDevicePolicyManager;
import android.app.job.IJobScheduler;
import android.app.job.JobScheduler;
import android.app.slice.SliceManager;
import android.app.timedetector.TimeDetector;
import android.app.timezone.RulesManager;
import android.app.trust.TrustManager;
import android.app.usage.IStorageStatsManager;
@@ -996,6 +997,13 @@ final class SystemServiceRegistry {
                                ServiceManager.getServiceOrThrow(
                                        Context.DEVICE_IDLE_CONTROLLER));
                        return new DeviceIdleManager(ctx.getOuterContext(), service);

        registerService(Context.TIME_DETECTOR_SERVICE, TimeDetector.class,
                new CachedServiceFetcher<TimeDetector>() {
                    @Override
                    public TimeDetector createService(ContextImpl ctx)
                            throws ServiceNotFoundException {
                        return new TimeDetector();
                    }});
    }

+34 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2018 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.app.timedetector;

/**
 * System private API to comunicate with time detector service.
 *
 * <p>Used by parts of the Android system with signals associated with the device's time to provide
 * information to the Time Detector Service.
 *
 * <p>Use the {@link android.app.timedetector.TimeDetector} class rather than going through
 * this Binder interface directly. See {@link android.app.timedetector.TimeDetectorService} for
 * more complete documentation.
 *
 *
 * {@hide}
 */
interface ITimeDetectorService {
  void stubbedCall();
}
+57 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2018 The Android Open Source Project
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package android.app.timedetector;

import android.annotation.SystemService;
import android.content.Context;
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.ServiceManager.ServiceNotFoundException;
import android.util.Log;

/**
 * The interface through which system components can send signals to the TimeDetectorService.
 * @hide
 */
@SystemService(Context.TIME_DETECTOR_SERVICE)
public final class TimeDetector {
    private static final String TAG = "timedetector.TimeDetector";
    private static final boolean DEBUG = false;

    private final ITimeDetectorService mITimeDetectorService;

    public TimeDetector() throws ServiceNotFoundException {
        mITimeDetectorService = ITimeDetectorService.Stub.asInterface(
                ServiceManager.getServiceOrThrow(Context.TIME_DETECTOR_SERVICE));
    }

    /**
     * Does nothing.
     * TODO: Remove this when the service implementation is built out.
     */
    public void stubbedCall() {
        if (DEBUG) {
            Log.d(TAG, "stubbedCall called");
        }
        try {
            mITimeDetectorService.stubbedCall();
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
    }

}
+10 −0
Original line number Diff line number Diff line
@@ -3058,6 +3058,7 @@ public abstract class Context {
            COMPANION_DEVICE_SERVICE,
            CROSS_PROFILE_APPS_SERVICE,
            //@hide: SYSTEM_UPDATE_SERVICE,
            //@hide: TIME_DETECTOR_SERVICE,
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface ServiceName {}
@@ -4209,6 +4210,15 @@ public abstract class Context {
    @SystemApi
    public static final String SECURE_ELEMENT_SERVICE = "secure_element";

    /**
     * Use with {@link #getSystemService(String)} to retrieve an
     * {@link android.app.timedetector.ITimeDetectorService}.
     * @hide
     *
     * @see #getSystemService(String)
     */
    public static final String TIME_DETECTOR_SERVICE = "time_detector";

    /**
     * Determine whether the given permission is allowed for a particular
     * process and user ID running in the system.
Loading