Loading apishim/29/com/android/networkstack/apishim/api29/NetworkRequestShimImpl.java 0 → 100644 +49 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 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.net.NetworkRequest; import android.util.Range; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.networkstack.apishim.common.NetworkRequestShim; import com.android.networkstack.apishim.common.UnsupportedApiLevelException; import java.util.Set; /** * Implementation of {@link NetworkRequestShim} for API 29. */ public class NetworkRequestShimImpl implements NetworkRequestShim { protected NetworkRequestShimImpl() {} /** * Get a new instance of {@link NetworkRequestShim}. */ public static NetworkRequestShim newInstance() { return new NetworkRequestShimImpl(); } @Override public void setUids(@NonNull NetworkRequest.Builder builder, @Nullable Set<Range<Integer>> uids) throws UnsupportedApiLevelException { // Not supported before API 31. throw new UnsupportedApiLevelException("Not supported before API 31."); } } apishim/30/com/android/networkstack/apishim/api30/NetworkRequestShimImpl.java 0 → 100644 +43 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 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; import android.os.Build; import com.android.networkstack.apishim.common.NetworkRequestShim; import com.android.networkstack.apishim.common.ShimUtils; /** * Implementation of {@link NetworkRequestShim} for API 30. */ public class NetworkRequestShimImpl extends com.android.networkstack.apishim.api29.NetworkRequestShimImpl { protected NetworkRequestShimImpl() { super(); } /** * Get a new instance of {@link NetworkRequestShim}. */ public static NetworkRequestShim newInstance() { if (!ShimUtils.isReleaseOrDevelopmentApiAbove(Build.VERSION_CODES.Q)) { return com.android.networkstack.apishim.api29.NetworkRequestShimImpl .newInstance(); } return new NetworkRequestShimImpl(); } } apishim/31/com/android/networkstack/apishim/NetworkRequestShimImpl.java 0 → 100644 +56 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 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.NetworkRequest; import android.os.Build; import android.util.Range; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.networkstack.apishim.common.NetworkRequestShim; import com.android.networkstack.apishim.common.ShimUtils; import java.util.Set; /** * Implementation of {@link NetworkRequestShim} for API 31. */ public class NetworkRequestShimImpl extends com.android.networkstack.apishim.api30.NetworkRequestShimImpl { protected NetworkRequestShimImpl() { super(); } /** * Get a new instance of {@link NetworkRequestShim}. */ public static NetworkRequestShim newInstance() { if (!ShimUtils.isReleaseOrDevelopmentApiAbove(Build.VERSION_CODES.R)) { return com.android.networkstack.apishim.api30.NetworkRequestShimImpl .newInstance(); } return new NetworkRequestShimImpl(); } @Override public void setUids(@NonNull NetworkRequest.Builder builder, @Nullable Set<Range<Integer>> uids) { builder.setUids(uids); } } apishim/common/com/android/networkstack/apishim/common/NetworkRequestShim.java 0 → 100644 +38 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 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.common; import android.net.NetworkRequest; import android.util.Range; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import java.util.Set; /** * Interface used to access API methods in {@link android.net.NetworkRequest}, with * appropriate fallbacks if the methods are not yet part of the released API. */ public interface NetworkRequestShim { /** * See android.net.NetworkRequest.Builder#setUids. * Set the {@code uids} into {@code builder}. */ void setUids(@NonNull NetworkRequest.Builder builder, @Nullable Set<Range<Integer>> uids) throws UnsupportedApiLevelException; } Loading
apishim/29/com/android/networkstack/apishim/api29/NetworkRequestShimImpl.java 0 → 100644 +49 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 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.net.NetworkRequest; import android.util.Range; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.networkstack.apishim.common.NetworkRequestShim; import com.android.networkstack.apishim.common.UnsupportedApiLevelException; import java.util.Set; /** * Implementation of {@link NetworkRequestShim} for API 29. */ public class NetworkRequestShimImpl implements NetworkRequestShim { protected NetworkRequestShimImpl() {} /** * Get a new instance of {@link NetworkRequestShim}. */ public static NetworkRequestShim newInstance() { return new NetworkRequestShimImpl(); } @Override public void setUids(@NonNull NetworkRequest.Builder builder, @Nullable Set<Range<Integer>> uids) throws UnsupportedApiLevelException { // Not supported before API 31. throw new UnsupportedApiLevelException("Not supported before API 31."); } }
apishim/30/com/android/networkstack/apishim/api30/NetworkRequestShimImpl.java 0 → 100644 +43 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 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; import android.os.Build; import com.android.networkstack.apishim.common.NetworkRequestShim; import com.android.networkstack.apishim.common.ShimUtils; /** * Implementation of {@link NetworkRequestShim} for API 30. */ public class NetworkRequestShimImpl extends com.android.networkstack.apishim.api29.NetworkRequestShimImpl { protected NetworkRequestShimImpl() { super(); } /** * Get a new instance of {@link NetworkRequestShim}. */ public static NetworkRequestShim newInstance() { if (!ShimUtils.isReleaseOrDevelopmentApiAbove(Build.VERSION_CODES.Q)) { return com.android.networkstack.apishim.api29.NetworkRequestShimImpl .newInstance(); } return new NetworkRequestShimImpl(); } }
apishim/31/com/android/networkstack/apishim/NetworkRequestShimImpl.java 0 → 100644 +56 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 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.NetworkRequest; import android.os.Build; import android.util.Range; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import com.android.networkstack.apishim.common.NetworkRequestShim; import com.android.networkstack.apishim.common.ShimUtils; import java.util.Set; /** * Implementation of {@link NetworkRequestShim} for API 31. */ public class NetworkRequestShimImpl extends com.android.networkstack.apishim.api30.NetworkRequestShimImpl { protected NetworkRequestShimImpl() { super(); } /** * Get a new instance of {@link NetworkRequestShim}. */ public static NetworkRequestShim newInstance() { if (!ShimUtils.isReleaseOrDevelopmentApiAbove(Build.VERSION_CODES.R)) { return com.android.networkstack.apishim.api30.NetworkRequestShimImpl .newInstance(); } return new NetworkRequestShimImpl(); } @Override public void setUids(@NonNull NetworkRequest.Builder builder, @Nullable Set<Range<Integer>> uids) { builder.setUids(uids); } }
apishim/common/com/android/networkstack/apishim/common/NetworkRequestShim.java 0 → 100644 +38 −0 Original line number Diff line number Diff line /* * Copyright (C) 2021 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.common; import android.net.NetworkRequest; import android.util.Range; import androidx.annotation.NonNull; import androidx.annotation.Nullable; import java.util.Set; /** * Interface used to access API methods in {@link android.net.NetworkRequest}, with * appropriate fallbacks if the methods are not yet part of the released API. */ public interface NetworkRequestShim { /** * See android.net.NetworkRequest.Builder#setUids. * Set the {@code uids} into {@code builder}. */ void setUids(@NonNull NetworkRequest.Builder builder, @Nullable Set<Range<Integer>> uids) throws UnsupportedApiLevelException; }