1 /*
2  * Copyright (c) 2018 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package com.android.server.wifi;
18 
19 import android.annotation.NonNull;
20 import android.net.DhcpInfo;
21 import android.net.Network;
22 import android.net.wifi.CoexUnsafeChannel;
23 import android.net.wifi.IActionListener;
24 import android.net.wifi.ICoexCallback;
25 import android.net.wifi.IDppCallback;
26 import android.net.wifi.ILocalOnlyHotspotCallback;
27 import android.net.wifi.INetworkRequestMatchCallback;
28 import android.net.wifi.IOnWifiActivityEnergyInfoListener;
29 import android.net.wifi.IOnWifiUsabilityStatsListener;
30 import android.net.wifi.IScanResultsCallback;
31 import android.net.wifi.ISoftApCallback;
32 import android.net.wifi.ISubsystemRestartCallback;
33 import android.net.wifi.ISuggestionConnectionStatusListener;
34 import android.net.wifi.ISuggestionUserApprovalStatusListener;
35 import android.net.wifi.ITrafficStateCallback;
36 import android.net.wifi.IWifiConnectedNetworkScorer;
37 import android.net.wifi.IWifiManager;
38 import android.net.wifi.IWifiVerboseLoggingStatusChangedListener;
39 import android.net.wifi.ScanResult;
40 import android.net.wifi.SoftApConfiguration;
41 import android.net.wifi.WifiAvailableChannel;
42 import android.net.wifi.WifiConfiguration;
43 import android.net.wifi.WifiInfo;
44 import android.net.wifi.WifiManager;
45 import android.net.wifi.WifiNetworkSuggestion;
46 import android.net.wifi.hotspot2.IProvisioningCallback;
47 import android.net.wifi.hotspot2.OsuProvider;
48 import android.net.wifi.hotspot2.PasspointConfiguration;
49 import android.os.IBinder;
50 import android.os.RemoteException;
51 import android.os.WorkSource;
52 
53 import com.android.modules.utils.ParceledListSlice;
54 
55 import java.util.List;
56 import java.util.Map;
57 
58 /**
59  * Empty concrete class implementing IWifiManager with stub methods throwing runtime exceptions.
60  *
61  * This class is meant to be extended by real implementations of IWifiManager in order to facilitate
62  * cross-repo changes to WiFi internal APIs, including the introduction of new APIs, the removal of
63  * deprecated APIs, or the migration of existing API signatures.
64  *
65  * When an existing API is scheduled for removal, it can be removed from IWifiManager.aidl
66  * immediately and marked as @Deprecated first in this class. Children inheriting this class are
67  * then given a short grace period to update themselves before the @Deprecated stub is removed for
68  * good. If the API scheduled for removal has a replacement or an overload (signature change),
69  * these should be introduced before the stub is removed to allow children to migrate.
70  *
71  * When a new API is added to IWifiManager.aidl, a stub should be added in BaseWifiService as
72  * well otherwise compilation will fail.
73  */
74 public class BaseWifiService extends IWifiManager.Stub {
75 
76     private static final String TAG = BaseWifiService.class.getSimpleName();
77 
78     @Override
getSupportedFeatures()79     public long getSupportedFeatures() {
80         throw new UnsupportedOperationException();
81     }
82 
83     @Override
getWifiActivityEnergyInfoAsync(IOnWifiActivityEnergyInfoListener listener)84     public void getWifiActivityEnergyInfoAsync(IOnWifiActivityEnergyInfoListener listener) {
85         throw new UnsupportedOperationException();
86     }
87 
88     @Deprecated
getConfiguredNetworks(String packageName, String featureId)89     public ParceledListSlice getConfiguredNetworks(String packageName, String featureId) {
90         throw new UnsupportedOperationException();
91     }
92 
93     @Override
getConfiguredNetworks(String packageName, String featureId, boolean callerNetworksOnly)94     public ParceledListSlice getConfiguredNetworks(String packageName, String featureId,
95             boolean callerNetworksOnly) {
96         throw new UnsupportedOperationException();
97     }
98 
99     @Override
getPrivilegedConfiguredNetworks(String packageName, String featureId)100     public ParceledListSlice getPrivilegedConfiguredNetworks(String packageName, String featureId) {
101         throw new UnsupportedOperationException();
102     }
103 
104     @Override
getAllMatchingFqdnsForScanResults( List<ScanResult> scanResults)105     public Map<String, Map<Integer, List<ScanResult>>> getAllMatchingFqdnsForScanResults(
106             List<ScanResult> scanResults) {
107         throw new UnsupportedOperationException();
108     }
109 
110     @Override
getMatchingOsuProviders( List<ScanResult> scanResults)111     public Map<OsuProvider, List<ScanResult>> getMatchingOsuProviders(
112             List<ScanResult> scanResults) {
113         throw new UnsupportedOperationException();
114     }
115 
116     @Override
getMatchingPasspointConfigsForOsuProviders( List<OsuProvider> osuProviders)117     public Map<OsuProvider, PasspointConfiguration> getMatchingPasspointConfigsForOsuProviders(
118             List<OsuProvider> osuProviders) {
119         throw new UnsupportedOperationException();
120     }
121 
122     @Override
addOrUpdateNetwork(WifiConfiguration config, String packageName)123     public int addOrUpdateNetwork(WifiConfiguration config, String packageName) {
124         throw new UnsupportedOperationException();
125     }
126 
127     @Override
addOrUpdateNetworkPrivileged(WifiConfiguration config, String packageName)128     public WifiManager.AddNetworkResult addOrUpdateNetworkPrivileged(WifiConfiguration config,
129             String packageName) {
130         throw new UnsupportedOperationException();
131     }
132 
133     @Override
addOrUpdatePasspointConfiguration( PasspointConfiguration config, String packageName)134     public boolean addOrUpdatePasspointConfiguration(
135             PasspointConfiguration config, String packageName) {
136         throw new UnsupportedOperationException();
137     }
138 
139     @Override
removePasspointConfiguration(String fqdn, String packageName)140     public boolean removePasspointConfiguration(String fqdn, String packageName) {
141         throw new UnsupportedOperationException();
142     }
143 
144     @Override
getPasspointConfigurations(String packageName)145     public List<PasspointConfiguration> getPasspointConfigurations(String packageName) {
146         throw new UnsupportedOperationException();
147     }
148 
149     @Override
getWifiConfigsForPasspointProfiles(List<String> fqdnList)150     public List<WifiConfiguration> getWifiConfigsForPasspointProfiles(List<String> fqdnList) {
151         throw new UnsupportedOperationException();
152     }
153 
154     @Override
queryPasspointIcon(long bssid, String fileName)155     public void queryPasspointIcon(long bssid, String fileName) {
156         throw new UnsupportedOperationException();
157     }
158 
159     @Override
matchProviderWithCurrentNetwork(String fqdn)160     public int matchProviderWithCurrentNetwork(String fqdn) {
161         throw new UnsupportedOperationException();
162     }
163 
164     @Override
removeNetwork(int netId, String packageName)165     public boolean removeNetwork(int netId, String packageName) {
166         throw new UnsupportedOperationException();
167     }
168 
169     @Override
removeNonCallerConfiguredNetworks(String packageName)170     public boolean removeNonCallerConfiguredNetworks(String packageName) {
171         throw new UnsupportedOperationException();
172     }
173 
174     @Override
enableNetwork(int netId, boolean disableOthers, String packageName)175     public boolean enableNetwork(int netId, boolean disableOthers, String packageName) {
176         throw new UnsupportedOperationException();
177     }
178 
179     @Override
disableNetwork(int netId, String packageName)180     public boolean disableNetwork(int netId, String packageName) {
181         throw new UnsupportedOperationException();
182     }
183 
184     @Override
allowAutojoinGlobal(boolean choice)185     public void allowAutojoinGlobal(boolean choice) {
186         throw new UnsupportedOperationException();
187     }
188 
189     @Override
allowAutojoin(int netId, boolean choice)190     public void allowAutojoin(int netId, boolean choice) {
191         throw new UnsupportedOperationException();
192     }
193 
194     @Override
allowAutojoinPasspoint(String fqdn, boolean enableAutoJoin)195     public void allowAutojoinPasspoint(String fqdn, boolean enableAutoJoin) {
196         throw new UnsupportedOperationException();
197     }
198 
199     @Override
setMacRandomizationSettingPasspointEnabled(String fqdn, boolean enable)200     public void setMacRandomizationSettingPasspointEnabled(String fqdn, boolean enable) {
201         throw new UnsupportedOperationException();
202     }
203 
204     @Override
setPasspointMeteredOverride(String fqdn, int meteredOverride)205     public void setPasspointMeteredOverride(String fqdn, int meteredOverride) {
206         throw new UnsupportedOperationException();
207     }
208 
209     @Override
startScan(String packageName, String featureId)210     public boolean startScan(String packageName, String featureId) {
211         throw new UnsupportedOperationException();
212     }
213 
214     @Override
getScanResults(String callingPackage, String callingFeatureId)215     public List<ScanResult> getScanResults(String callingPackage, String callingFeatureId) {
216         throw new UnsupportedOperationException();
217     }
218 
219     @Override
disconnect(String packageName)220     public boolean disconnect(String packageName) {
221         throw new UnsupportedOperationException();
222     }
223 
224     @Override
reconnect(String packageName)225     public boolean reconnect(String packageName) {
226         throw new UnsupportedOperationException();
227     }
228 
229     @Override
reassociate(String packageName)230     public boolean reassociate(String packageName) {
231         throw new UnsupportedOperationException();
232     }
233 
234     @Override
getConnectionInfo(String callingPackage, String callingFeatureId)235     public WifiInfo getConnectionInfo(String callingPackage, String callingFeatureId) {
236         throw new UnsupportedOperationException();
237     }
238 
239     @Override
setWifiEnabled(String packageName, boolean enable)240     public boolean setWifiEnabled(String packageName, boolean enable) {
241         throw new UnsupportedOperationException();
242     }
243 
244     @Override
registerSubsystemRestartCallback(ISubsystemRestartCallback callback)245     public void registerSubsystemRestartCallback(ISubsystemRestartCallback callback) {
246         throw new UnsupportedOperationException();
247     }
248 
249     @Override
unregisterSubsystemRestartCallback(ISubsystemRestartCallback callback)250     public void unregisterSubsystemRestartCallback(ISubsystemRestartCallback callback) {
251         throw new UnsupportedOperationException();
252     }
253 
254     @Override
restartWifiSubsystem()255     public void restartWifiSubsystem() {
256         throw new UnsupportedOperationException();
257     }
258 
259     @Override
getWifiEnabledState()260     public int getWifiEnabledState() {
261         throw new UnsupportedOperationException();
262     }
263 
264     @Override
getCountryCode()265     public String getCountryCode() {
266         throw new UnsupportedOperationException();
267     }
268 
269     @Override
setOverrideCountryCode(@onNull String countryCode)270     public void setOverrideCountryCode(@NonNull String countryCode) {
271         throw new UnsupportedOperationException();
272     }
273 
274     @Override
clearOverrideCountryCode()275     public void clearOverrideCountryCode() {
276         throw new UnsupportedOperationException();
277     }
278 
279     @Override
setDefaultCountryCode(@onNull String countryCode)280     public void setDefaultCountryCode(@NonNull String countryCode) {
281         throw new UnsupportedOperationException();
282     }
283 
284     @Override
is24GHzBandSupported()285     public boolean is24GHzBandSupported() {
286         throw new UnsupportedOperationException();
287     }
288 
289     @Override
is5GHzBandSupported()290     public boolean is5GHzBandSupported() {
291         throw new UnsupportedOperationException();
292     }
293 
294     @Override
is6GHzBandSupported()295     public boolean is6GHzBandSupported() {
296         throw new UnsupportedOperationException();
297     }
298 
299     @Override
is60GHzBandSupported()300     public boolean is60GHzBandSupported() {
301         throw new UnsupportedOperationException();
302     }
303 
304     @Override
isWifiStandardSupported(int standard)305     public boolean isWifiStandardSupported(int standard) {
306         throw new UnsupportedOperationException();
307     }
308 
309     @Override
getDhcpInfo(String packageName)310     public DhcpInfo getDhcpInfo(String packageName) {
311         throw new UnsupportedOperationException();
312     }
313 
314     @Override
setScanAlwaysAvailable(boolean isAvailable, String packageName)315     public void setScanAlwaysAvailable(boolean isAvailable, String packageName) {
316         throw new UnsupportedOperationException();
317     }
318 
319     @Override
isScanAlwaysAvailable()320     public boolean isScanAlwaysAvailable() {
321         throw new UnsupportedOperationException();
322     }
323 
324     @Override
acquireWifiLock(IBinder lock, int lockType, String tag, WorkSource ws)325     public boolean acquireWifiLock(IBinder lock, int lockType, String tag, WorkSource ws) {
326         throw new UnsupportedOperationException();
327     }
328 
329     @Override
updateWifiLockWorkSource(IBinder lock, WorkSource ws)330     public void updateWifiLockWorkSource(IBinder lock, WorkSource ws) {
331         throw new UnsupportedOperationException();
332     }
333 
334     @Override
releaseWifiLock(IBinder lock)335     public boolean releaseWifiLock(IBinder lock) {
336         throw new UnsupportedOperationException();
337     }
338 
339     @Override
initializeMulticastFiltering()340     public void initializeMulticastFiltering() {
341         throw new UnsupportedOperationException();
342     }
343 
344     @Override
isMulticastEnabled()345     public boolean isMulticastEnabled() {
346         throw new UnsupportedOperationException();
347     }
348 
349     @Override
acquireMulticastLock(IBinder binder, String tag)350     public void acquireMulticastLock(IBinder binder, String tag) {
351         throw new UnsupportedOperationException();
352     }
353 
354     @Override
releaseMulticastLock(String tag)355     public void releaseMulticastLock(String tag) {
356         throw new UnsupportedOperationException();
357     }
358 
359     @Override
updateInterfaceIpState(String ifaceName, int mode)360     public void updateInterfaceIpState(String ifaceName, int mode) {
361         throw new UnsupportedOperationException();
362     }
363 
364     @Override
isDefaultCoexAlgorithmEnabled()365     public boolean isDefaultCoexAlgorithmEnabled() {
366         throw new UnsupportedOperationException();
367     }
368 
369     @Override
setCoexUnsafeChannels(List<CoexUnsafeChannel> unsafeChannels, int restrictions)370     public void setCoexUnsafeChannels(List<CoexUnsafeChannel> unsafeChannels, int restrictions) {
371         throw new UnsupportedOperationException();
372     }
373 
374     @Override
registerCoexCallback(ICoexCallback callback)375     public void registerCoexCallback(ICoexCallback callback) {
376         throw new UnsupportedOperationException();
377     }
378 
379     @Override
unregisterCoexCallback(ICoexCallback callback)380     public void unregisterCoexCallback(ICoexCallback callback) {
381         throw new UnsupportedOperationException();
382     }
383 
384     @Override
startSoftAp(WifiConfiguration wifiConfig, String packageName)385     public boolean startSoftAp(WifiConfiguration wifiConfig, String packageName) {
386         throw new UnsupportedOperationException();
387     }
388 
389     @Override
startTetheredHotspot(SoftApConfiguration softApConfig, String packageName)390     public boolean startTetheredHotspot(SoftApConfiguration softApConfig, String packageName) {
391         throw new UnsupportedOperationException();
392     }
393 
394     @Override
stopSoftAp()395     public boolean stopSoftAp() {
396         throw new UnsupportedOperationException();
397     }
398 
399     @Override
startLocalOnlyHotspot(ILocalOnlyHotspotCallback callback, String packageName, String featureId, SoftApConfiguration customConfig)400     public int startLocalOnlyHotspot(ILocalOnlyHotspotCallback callback, String packageName,
401             String featureId, SoftApConfiguration customConfig) {
402         throw new UnsupportedOperationException();
403     }
404 
405     @Override
stopLocalOnlyHotspot()406     public void stopLocalOnlyHotspot() {
407         throw new UnsupportedOperationException();
408     }
409 
410     @Override
startWatchLocalOnlyHotspot(ILocalOnlyHotspotCallback callback)411     public void startWatchLocalOnlyHotspot(ILocalOnlyHotspotCallback callback) {
412         throw new UnsupportedOperationException();
413     }
414 
415     @Override
stopWatchLocalOnlyHotspot()416     public void stopWatchLocalOnlyHotspot() {
417         throw new UnsupportedOperationException();
418     }
419 
420     @Override
getWifiApEnabledState()421     public int getWifiApEnabledState() {
422         throw new UnsupportedOperationException();
423     }
424 
425     @Override
getWifiApConfiguration()426     public WifiConfiguration getWifiApConfiguration() {
427         throw new UnsupportedOperationException();
428     }
429 
430     @Override
getSoftApConfiguration()431     public SoftApConfiguration getSoftApConfiguration() {
432         throw new UnsupportedOperationException();
433     }
434 
435     @Override
setWifiApConfiguration(WifiConfiguration wifiConfig, String packageName)436     public boolean setWifiApConfiguration(WifiConfiguration wifiConfig, String packageName) {
437         throw new UnsupportedOperationException();
438     }
439 
440     @Override
setSoftApConfiguration(SoftApConfiguration softApConfig, String packageName)441     public boolean setSoftApConfiguration(SoftApConfiguration softApConfig, String packageName) {
442         throw new UnsupportedOperationException();
443     }
444 
445     @Override
notifyUserOfApBandConversion(String packageName)446     public void notifyUserOfApBandConversion(String packageName) {
447         throw new UnsupportedOperationException();
448     }
449 
450     @Override
enableTdls(String remoteIPAddress, boolean enable)451     public void enableTdls(String remoteIPAddress, boolean enable) {
452         throw new UnsupportedOperationException();
453     }
454 
455     @Override
enableTdlsWithMacAddress(String remoteMacAddress, boolean enable)456     public void enableTdlsWithMacAddress(String remoteMacAddress, boolean enable) {
457         throw new UnsupportedOperationException();
458     }
459 
460     @Override
getCurrentNetworkWpsNfcConfigurationToken()461     public String getCurrentNetworkWpsNfcConfigurationToken() {
462         throw new UnsupportedOperationException();
463     }
464 
465     @Override
enableVerboseLogging(int verbose)466     public void enableVerboseLogging(int verbose) {
467         throw new UnsupportedOperationException();
468     }
469 
470     @Override
getVerboseLoggingLevel()471     public int getVerboseLoggingLevel() {
472         throw new UnsupportedOperationException();
473     }
474 
475     @Override
disableEphemeralNetwork(String SSID, String packageName)476     public void disableEphemeralNetwork(String SSID, String packageName) {
477         throw new UnsupportedOperationException();
478     }
479 
480     @Override
factoryReset(String packageName)481     public void factoryReset(String packageName) {
482         throw new UnsupportedOperationException();
483     }
484 
485     @Override
getCurrentNetwork()486     public Network getCurrentNetwork() {
487         throw new UnsupportedOperationException();
488     }
489 
490     @Override
retrieveBackupData()491     public byte[] retrieveBackupData() {
492         throw new UnsupportedOperationException();
493     }
494 
495     @Override
restoreBackupData(byte[] data)496     public void restoreBackupData(byte[] data) {
497         throw new UnsupportedOperationException();
498     }
499 
500     @Override
retrieveSoftApBackupData()501     public byte[] retrieveSoftApBackupData() {
502         throw new UnsupportedOperationException();
503     }
504 
505     @Override
restoreSoftApBackupData(byte[] data)506     public SoftApConfiguration restoreSoftApBackupData(byte[] data) {
507         throw new UnsupportedOperationException();
508     }
509 
510     @Override
restoreSupplicantBackupData(byte[] supplicantData, byte[] ipConfigData)511     public void restoreSupplicantBackupData(byte[] supplicantData, byte[] ipConfigData) {
512         throw new UnsupportedOperationException();
513     }
514 
515     @Override
startSubscriptionProvisioning( OsuProvider provider, IProvisioningCallback callback)516     public void startSubscriptionProvisioning(
517             OsuProvider provider, IProvisioningCallback callback) {
518         throw new UnsupportedOperationException();
519     }
520 
521     @Override
addWifiVerboseLoggingStatusChangedListener( IWifiVerboseLoggingStatusChangedListener callback)522     public void addWifiVerboseLoggingStatusChangedListener(
523             IWifiVerboseLoggingStatusChangedListener callback) {
524         throw new UnsupportedOperationException();
525     }
526 
527     @Override
removeWifiVerboseLoggingStatusChangedListener( IWifiVerboseLoggingStatusChangedListener callback)528     public void removeWifiVerboseLoggingStatusChangedListener(
529             IWifiVerboseLoggingStatusChangedListener callback) {
530         throw new UnsupportedOperationException();
531     }
532 
533     @Override
registerSoftApCallback(ISoftApCallback callback)534     public void registerSoftApCallback(ISoftApCallback callback) {
535         throw new UnsupportedOperationException();
536     }
537 
538     @Override
unregisterSoftApCallback(ISoftApCallback callback)539     public void unregisterSoftApCallback(ISoftApCallback callback) {
540         throw new UnsupportedOperationException();
541     }
542 
543     @Override
registerTrafficStateCallback(ITrafficStateCallback callback)544     public void registerTrafficStateCallback(ITrafficStateCallback callback) {
545         throw new UnsupportedOperationException();
546     }
547 
548     @Override
unregisterTrafficStateCallback(ITrafficStateCallback callback)549     public void unregisterTrafficStateCallback(ITrafficStateCallback callback) {
550         throw new UnsupportedOperationException();
551     }
552 
553     @Override
registerNetworkRequestMatchCallback(INetworkRequestMatchCallback callback)554     public void registerNetworkRequestMatchCallback(INetworkRequestMatchCallback callback) {
555         throw new UnsupportedOperationException();
556     }
557 
558     @Override
unregisterNetworkRequestMatchCallback(INetworkRequestMatchCallback callback)559     public void unregisterNetworkRequestMatchCallback(INetworkRequestMatchCallback callback) {
560         throw new UnsupportedOperationException();
561     }
562 
563     @Override
addNetworkSuggestions( List<WifiNetworkSuggestion> networkSuggestions, String callingPackageName, String callingFeatureId)564     public int addNetworkSuggestions(
565             List<WifiNetworkSuggestion> networkSuggestions, String callingPackageName,
566             String callingFeatureId) {
567         throw new UnsupportedOperationException();
568     }
569 
570     @Override
removeNetworkSuggestions( List<WifiNetworkSuggestion> networkSuggestions, String callingPackageName)571     public int removeNetworkSuggestions(
572             List<WifiNetworkSuggestion> networkSuggestions, String callingPackageName) {
573         throw new UnsupportedOperationException();
574     }
575 
576     @Override
getNetworkSuggestions(String packageName)577     public List<WifiNetworkSuggestion> getNetworkSuggestions(String packageName) {
578         throw new UnsupportedOperationException();
579     }
580 
581     @Override
setCarrierNetworkOffloadEnabled(int subId, boolean merged, boolean enabled)582     public void setCarrierNetworkOffloadEnabled(int subId, boolean merged, boolean enabled)
583             throws RemoteException {
584         throw new UnsupportedOperationException();
585     }
586 
587     @Override
isCarrierNetworkOffloadEnabled(int subId, boolean merged)588     public boolean isCarrierNetworkOffloadEnabled(int subId, boolean merged)
589             throws RemoteException {
590         throw new UnsupportedOperationException();
591     }
592 
593     @Override
getFactoryMacAddresses()594     public String[] getFactoryMacAddresses() {
595         throw new UnsupportedOperationException();
596     }
597 
598     @Override
setDeviceMobilityState(int state)599     public void setDeviceMobilityState(int state) {
600         throw new UnsupportedOperationException();
601     }
602 
603     @Override
startDppAsConfiguratorInitiator(IBinder binder, String packageName, String enrolleeUri, int selectedNetworkId, int netRole, IDppCallback callback)604     public void startDppAsConfiguratorInitiator(IBinder binder, String packageName,
605             String enrolleeUri, int selectedNetworkId, int netRole, IDppCallback callback) {
606         throw new UnsupportedOperationException();
607     }
608 
609     @Override
startDppAsEnrolleeInitiator(IBinder binder, String configuratorUri, IDppCallback callback)610     public void startDppAsEnrolleeInitiator(IBinder binder, String configuratorUri,
611             IDppCallback callback) {
612         throw new UnsupportedOperationException();
613     }
614 
615     @Override
startDppAsEnrolleeResponder(IBinder binder, String deviceInfo, int curve, IDppCallback callback)616     public void startDppAsEnrolleeResponder(IBinder binder, String deviceInfo,
617             int curve, IDppCallback callback) {
618         throw new UnsupportedOperationException();
619     }
620 
621     @Override
stopDppSession()622     public void stopDppSession() throws RemoteException {
623         throw new UnsupportedOperationException();
624     }
625 
626     @Override
addOnWifiUsabilityStatsListener(IOnWifiUsabilityStatsListener listener)627     public void addOnWifiUsabilityStatsListener(IOnWifiUsabilityStatsListener listener) {
628         throw new UnsupportedOperationException();
629     }
630 
631     @Override
removeOnWifiUsabilityStatsListener(IOnWifiUsabilityStatsListener listener)632     public void removeOnWifiUsabilityStatsListener(IOnWifiUsabilityStatsListener listener) {
633         throw new UnsupportedOperationException();
634     }
635 
636     @Override
updateWifiUsabilityScore(int seqNum, int score, int predictionHorizonSec)637     public void updateWifiUsabilityScore(int seqNum, int score, int predictionHorizonSec) {
638         throw new UnsupportedOperationException();
639     }
640 
641     @Override
connect(WifiConfiguration config, int netId, IActionListener callback)642     public void connect(WifiConfiguration config, int netId, IActionListener callback) {
643         throw new UnsupportedOperationException();
644     }
645 
646     @Override
startRestrictingAutoJoinToSubscriptionId(int subId)647     public void startRestrictingAutoJoinToSubscriptionId(int subId) {
648         throw new UnsupportedOperationException();
649     }
650 
651     @Override
stopRestrictingAutoJoinToSubscriptionId()652     public void stopRestrictingAutoJoinToSubscriptionId() {
653         throw new UnsupportedOperationException();
654     }
655 
656     @Override
save(WifiConfiguration config, IActionListener callback)657     public void save(WifiConfiguration config, IActionListener callback) {
658         throw new UnsupportedOperationException();
659     }
660 
661     @Override
forget(int netId, IActionListener callback)662     public void forget(int netId, IActionListener callback) {
663         throw new UnsupportedOperationException();
664     }
665 
666     @Override
registerScanResultsCallback(IScanResultsCallback callback)667     public void registerScanResultsCallback(IScanResultsCallback callback) {
668         throw new UnsupportedOperationException();
669     }
670 
671     @Override
unregisterScanResultsCallback(IScanResultsCallback callback)672     public void unregisterScanResultsCallback(IScanResultsCallback callback) {
673         throw new UnsupportedOperationException();
674     }
675 
676     @Override
registerSuggestionConnectionStatusListener( ISuggestionConnectionStatusListener listener, String packageName, String featureId)677     public void registerSuggestionConnectionStatusListener(
678             ISuggestionConnectionStatusListener listener, String packageName, String featureId) {
679         throw new UnsupportedOperationException();
680     }
681 
682     @Override
unregisterSuggestionConnectionStatusListener( ISuggestionConnectionStatusListener listener, String packageName)683     public void unregisterSuggestionConnectionStatusListener(
684             ISuggestionConnectionStatusListener listener, String packageName) {
685         throw new UnsupportedOperationException();
686     }
687 
688     @Override
calculateSignalLevel(int rssi)689     public int calculateSignalLevel(int rssi) {
690         throw new UnsupportedOperationException();
691     }
692 
693     @Override
getWifiConfigForMatchedNetworkSuggestionsSharedWithUser( List<ScanResult> scanResults)694     public List<WifiConfiguration> getWifiConfigForMatchedNetworkSuggestionsSharedWithUser(
695             List<ScanResult> scanResults) {
696         throw new UnsupportedOperationException();
697     }
698 
699     @Override
setWifiConnectedNetworkScorer(IBinder binder, IWifiConnectedNetworkScorer scorer)700     public boolean setWifiConnectedNetworkScorer(IBinder binder,
701             IWifiConnectedNetworkScorer scorer) {
702         throw new UnsupportedOperationException();
703     }
704 
705     @Override
clearWifiConnectedNetworkScorer()706     public void clearWifiConnectedNetworkScorer() {
707         throw new UnsupportedOperationException();
708     }
709 
710     @Override
getMatchingScanResults( List<WifiNetworkSuggestion> networkSuggestions, List<ScanResult> scanResults, String callingPackage, String callingFeatureId)711     public Map<WifiNetworkSuggestion, List<ScanResult>> getMatchingScanResults(
712             List<WifiNetworkSuggestion> networkSuggestions,
713             List<ScanResult> scanResults,
714             String callingPackage, String callingFeatureId) {
715         throw new UnsupportedOperationException();
716     }
717 
718     @Override
setScanThrottleEnabled(boolean enable)719     public void setScanThrottleEnabled(boolean enable) {
720         throw new UnsupportedOperationException();
721     }
722 
723     @Override
isScanThrottleEnabled()724     public boolean isScanThrottleEnabled() {
725         throw new UnsupportedOperationException();
726     }
727 
728     @Override
729     public Map<String, Map<Integer, List<ScanResult>>>
getAllMatchingPasspointProfilesForScanResults(List<ScanResult> scanResults)730             getAllMatchingPasspointProfilesForScanResults(List<ScanResult> scanResults) {
731         throw new UnsupportedOperationException();
732     }
733 
734     @Override
setAutoWakeupEnabled(boolean enable)735     public void setAutoWakeupEnabled(boolean enable) {
736         throw new UnsupportedOperationException();
737     }
738 
739     @Override
isAutoWakeupEnabled()740     public boolean isAutoWakeupEnabled() {
741         throw new UnsupportedOperationException();
742     }
743 
744     @Override
addSuggestionUserApprovalStatusListener( ISuggestionUserApprovalStatusListener listener, String packageName)745     public void addSuggestionUserApprovalStatusListener(
746             ISuggestionUserApprovalStatusListener listener, String packageName) {
747         throw new UnsupportedOperationException();
748     }
749 
750     @Override
removeSuggestionUserApprovalStatusListener( ISuggestionUserApprovalStatusListener listener, String packageName)751     public void removeSuggestionUserApprovalStatusListener(
752             ISuggestionUserApprovalStatusListener listener, String packageName) {
753         throw new UnsupportedOperationException();
754     }
755 
756     @Override
setEmergencyScanRequestInProgress(boolean inProgress)757     public void setEmergencyScanRequestInProgress(boolean inProgress) {
758         throw new UnsupportedOperationException();
759     }
760 
761     @Override
removeAppState(int targetAppUid, @NonNull String targetAppPackageName)762     public void removeAppState(int targetAppUid, @NonNull String targetAppPackageName) {
763         throw new UnsupportedOperationException();
764     }
765 
766     @Override
setWifiScoringEnabled(boolean enabled)767     public boolean setWifiScoringEnabled(boolean enabled) {
768         throw new UnsupportedOperationException();
769     }
770 
771     @Override
flushPasspointAnqpCache(@onNull String packageName)772     public void flushPasspointAnqpCache(@NonNull String packageName) {
773         throw new UnsupportedOperationException();
774     }
775 
776     @Override
getUsableChannels( int band, int mode, int filter)777     public List<WifiAvailableChannel> getUsableChannels(
778             int band, int mode, int filter) {
779         throw new UnsupportedOperationException();
780     }
781 }
782 
783