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

Commit 9bcb0e66 authored by paulhu's avatar paulhu
Browse files

Add shims for ConnectivityFrameworkInitializer

The shims will be used for new ConnectivityFrameworkInitializer APIs.

Bug: 206702844
Test: atest CtsNetTestCases
Change-Id: Id6d480f561e2bb78f34436d026c04f86ce7d26e5
parent 2fa6fd33
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -169,6 +169,7 @@ java_library {
        "NetworkStackApi30Shims",
        "NetworkStackApi31Shims",
        "framework-connectivity",
        "framework-connectivity-tiramisu.stubs.module_lib",
        "framework-tethering",
    ],
    sdk_version: "module_current",
+41 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2022 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 com.android.networkstack.apishim.api29;

import android.os.Build;

import androidx.annotation.RequiresApi;

import com.android.networkstack.apishim.common.ConnectivityFrameworkInitShim;

/**
 * Implementation of {@link ConnectivityFrameworkInitShim}.
 */
@RequiresApi(Build.VERSION_CODES.Q)
public class ConnectivityFrameworkInitShimImpl implements ConnectivityFrameworkInitShim {
    /**
     * Get a new instance of {@link NsdShim}.
     */
    public static ConnectivityFrameworkInitShim newInstance() {
        return new ConnectivityFrameworkInitShimImpl();
    }

    @Override
    public void registerServiceWrappers() {
        // No-op: ConnectivityFrameworkInitializer doesn't exist before S
    }
}
+25 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2022 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 com.android.networkstack.apishim.api30;

/**
 * Implementation of {@link ConnectivityFrameworkInitShim}.
 */
public class ConnectivityFrameworkInitShimImpl extends
        com.android.networkstack.apishim.api29.ConnectivityFrameworkInitShimImpl {
    // Inherit everything from API29 shim
}
+25 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2022 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 com.android.networkstack.apishim.api31;

/**
 * Implementation of {@link ConnectivityFrameworkInitShim}.
 */
public class ConnectivityFrameworkInitShimImpl extends
        com.android.networkstack.apishim.api30.ConnectivityFrameworkInitShimImpl {
    // Inherit everything from API30 shim
}
+49 −0
Original line number Diff line number Diff line
/*
 * Copyright (C) 2022 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 com.android.networkstack.apishim;

import android.net.ConnectivityFrameworkInitializerTiramisu;
import android.os.Build;

import androidx.annotation.RequiresApi;

import com.android.modules.utils.build.SdkLevel;
import com.android.networkstack.apishim.common.ConnectivityFrameworkInitShim;

/**
 * Implementation of {@link ConnectivityFrameworkInitShim}.
 */
@RequiresApi(Build.VERSION_CODES.TIRAMISU)
public class ConnectivityFrameworkInitShimImpl extends
        com.android.networkstack.apishim.api31.ConnectivityFrameworkInitShimImpl {
    /**
     * Get a new instance of {@link ConnectivityFrameworkInitShimImpl}.
     */
    @RequiresApi(Build.VERSION_CODES.Q)
    public static ConnectivityFrameworkInitShim newInstance() {
        if (SdkLevel.isAtLeastT()) {
            return new ConnectivityFrameworkInitShimImpl();
        } else {
            return new com.android.networkstack.apishim.api31.ConnectivityFrameworkInitShimImpl();
        }
    }

    @Override
    public void registerServiceWrappers() {
        ConnectivityFrameworkInitializerTiramisu.registerServiceWrappers();
    }
}
Loading