2 * Copyright (c) 2011 Samsung Electronics Co., Ltd All Rights Reserved
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
8 * http://www.apache.org/licenses/LICENSE-2.0
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.
18 #ifndef TIZENAPIS_PLATFORM_CALLHISTORY_FILTER_H_
19 #define TIZENAPIS_PLATFORM_CALLHISTORY_FILTER_H_
22 #include <dpl/shared_ptr.h>
25 #include <API/Filter/IFilterVisitor.h>
26 #include <API/Call/CallHistoryEntryProperties.h>
31 class CallHistoryFilter: public Api::Tizen::IFilterVisitor
39 void visitPreComposite(Api::Tizen::FilterType& type, int depth);
41 void visitInComposite(Api::Tizen::FilterType& type, int depth);
43 void visitPostComposite(Api::Tizen::FilterType& type, int depth);
45 void visitAttribute(std::string& attrName,
46 Api::Tizen::AnyArrayPtr& values,
47 std::string& matchFlag,
51 void visitAttributeRange(std::string& attrName,
52 Api::Tizen::AnyPtr& initialValue,
53 Api::Tizen::AnyPtr& endValue,
57 std::string getResult() const;
58 std::string convertAttributeArray(std::string &name, Api::Tizen::AnyArrayPtr& values);
59 std::string convertAttribute(std::string &name, Api::Tizen::AnyPtr& value);
62 typedef DPL::SharedPtr<CallHistoryFilter> CallHistoryFilterPtr;