diff --git a/dexter/src/main/java/com/karumi/dexter/listener/multi/BaseMultiplePermissionsListener.java b/dexter/src/main/java/com/karumi/dexter/listener/multi/BaseMultiplePermissionsListener.java new file mode 100644 index 00000000..46e4eec9 --- /dev/null +++ b/dexter/src/main/java/com/karumi/dexter/listener/multi/BaseMultiplePermissionsListener.java @@ -0,0 +1,38 @@ +/* + * Copyright (C) 2015 Karumi. + * + * 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.karumi.dexter.listener.multi; + +import com.karumi.dexter.MultiplePermissionsReport; +import com.karumi.dexter.PermissionToken; +import com.karumi.dexter.listener.PermissionRequest; +import java.util.List; + +/** + * Base implementation of {@link MultiplePermissionsListener} to allow extensions to implement + * only the required methods + */ +public class BaseMultiplePermissionsListener implements MultiplePermissionsListener { + + @Override public void onPermissionsChecked(MultiplePermissionsReport report) { + + } + + @Override public void onPermissionRationaleShouldBeShown(List permissions, + PermissionToken token) { + token.continuePermissionRequest(); + } +} diff --git a/dexter/src/main/java/com/karumi/dexter/listener/multi/EmptyMultiplePermissionsListener.java b/dexter/src/main/java/com/karumi/dexter/listener/multi/EmptyMultiplePermissionsListener.java index c28b350f..7c6cac30 100644 --- a/dexter/src/main/java/com/karumi/dexter/listener/multi/EmptyMultiplePermissionsListener.java +++ b/dexter/src/main/java/com/karumi/dexter/listener/multi/EmptyMultiplePermissionsListener.java @@ -24,7 +24,10 @@ /** * Empty implementation of {@link MultiplePermissionsListener} to allow extensions to implement * only the required methods + * @deprecated Use {@link BaseMultiplePermissionsListener} instead that has a default implementation + * for the method onPermissionRationaleShouldBeShown. */ +@Deprecated public class EmptyMultiplePermissionsListener implements MultiplePermissionsListener { @Override public void onPermissionsChecked(MultiplePermissionsReport report) { diff --git a/dexter/src/main/java/com/karumi/dexter/listener/single/BasePermissionListener.java b/dexter/src/main/java/com/karumi/dexter/listener/single/BasePermissionListener.java new file mode 100644 index 00000000..a5834b65 --- /dev/null +++ b/dexter/src/main/java/com/karumi/dexter/listener/single/BasePermissionListener.java @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2015 Karumi. + * + * 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.karumi.dexter.listener.single; + +import com.karumi.dexter.PermissionToken; +import com.karumi.dexter.listener.PermissionDeniedResponse; +import com.karumi.dexter.listener.PermissionGrantedResponse; +import com.karumi.dexter.listener.PermissionRequest; + +/** + * Base implementation of {@link PermissionListener} to allow extensions to implement only the + * required methods + */ +public class BasePermissionListener implements PermissionListener { + + @Override public void onPermissionGranted(PermissionGrantedResponse response) { + + } + + @Override public void onPermissionDenied(PermissionDeniedResponse response) { + + } + + @Override public void onPermissionRationaleShouldBeShown(PermissionRequest permission, + PermissionToken token) { + token.continuePermissionRequest(); + } +} diff --git a/dexter/src/main/java/com/karumi/dexter/listener/single/EmptyPermissionListener.java b/dexter/src/main/java/com/karumi/dexter/listener/single/EmptyPermissionListener.java index 865402f3..919f1289 100644 --- a/dexter/src/main/java/com/karumi/dexter/listener/single/EmptyPermissionListener.java +++ b/dexter/src/main/java/com/karumi/dexter/listener/single/EmptyPermissionListener.java @@ -24,7 +24,10 @@ /** * Empty implementation of {@link PermissionListener} to allow extensions to implement only the * required methods + * @deprecated Use {@link BasePermissionListener} instead that has a default implementation + * for the method onPermissionRationaleShouldBeShown. */ +@Deprecated public class EmptyPermissionListener implements PermissionListener { @Override public void onPermissionGranted(PermissionGrantedResponse response) {