1/* Copyright (c) 2025 Huawei Device Co., Ltd. 2 * Licensed under the Apache License, Version 2.0 (the "License"); 3 * you may not use this file except in compliance with the License. 4 * You may obtain a copy of the License at 5 * 6 * http://www.apache.org/licenses/LICENSE-2.0 7 * 8 * Unless required by applicable law or agreed to in writing, software 9 * distributed under the License is distributed on an "AS IS" BASIS, 10 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 11 * See the License for the specific language governing permissions and 12 * limitations under the License. 13 */ 14package OHOS.Security.SecurityGuard; 15package OHOS.Security.SecurityCollector; 16sequenceable OHOS.IRemoteObject; 17sequenceable OHOS.Security.SecurityCollector.SecurityEventRuler; 18sequenceable OHOS.Security.SecurityCollector.SecurityCollectorSubscribeInfo; 19sequenceable OHOS.Security.SecurityGuard.SecurityEventFilter; 20 21interface OHOS.Security.SecurityGuard.DataCollectManagerIdl { 22 void RequestDataSubmit([in] long eventId, [in] String version, [in] String time, [in] String content); 23 [oneway] void RequestDataSubmitAsync([in] long eventId, [in] String version, [in] String time, [in] String content); 24 void RequestRiskData([in] String devId, [in] String eventList, [in] IRemoteObject cb); 25 void Subscribe([in] SecurityCollectorSubscribeInfo subscribeInfo, [in] IRemoteObject cb, [in] String clientId); 26 void Unsubscribe([in] SecurityCollectorSubscribeInfo subscribeInfo, [in] IRemoteObject cb, [in] String clientId); 27 void QuerySecurityEvent([in] List<SecurityEventRuler> rulers, [in] IRemoteObject cb, [in] String eventGroup); 28 void CollectorStart([in] SecurityCollectorSubscribeInfo subscribeInfo, [in] IRemoteObject cb); 29 void CollectorStop([in] SecurityCollectorSubscribeInfo subscribeInfo, [in] IRemoteObject cb); 30 void ConfigUpdate([in] FileDescriptor fd, [in] String name); 31 void QuerySecurityEventConfig([inout] String resStr); 32 void AddFilter([in] SecurityEventFilter subscribeMute, [in] String clientId); 33 void RemoveFilter([in] SecurityEventFilter subscribeMute, [in] String clientId); 34 void CreatClient([in] String eventGroup, [in] String clientId, [in] IRemoteObject cb); 35 void DestoryClient([in] String eventGroup, [in] String clientId); 36 void Subscribe([in] long eventId, [in] String clientId); 37 void Unsubscribe([in] long eventId, [in] String clientId); 38 void QuerySecurityEventById([in] List<SecurityEventRuler> rulers, [in] IRemoteObject cb, [in] String eventGroup); 39}