- add sources.
[platform/framework/web/crosswalk.git] / src / content / renderer / android / phone_number_detector.h
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef CONTENT_RENDERER_ANDROID_PHONE_NUMBER_DETECTOR_H_
6 #define CONTENT_RENDERER_ANDROID_PHONE_NUMBER_DETECTOR_H_
7
8 #include "base/compiler_specific.h"
9 #include "content/common/content_export.h"
10 #include "content/renderer/android/content_detector.h"
11
12 namespace content {
13
14 class PhoneNumberDetectorTest;
15
16 // Finds a telephone number in the given content text string.
17 class CONTENT_EXPORT PhoneNumberDetector : public ContentDetector {
18  public:
19   PhoneNumberDetector();
20   explicit PhoneNumberDetector(const std::string& region);
21   virtual ~PhoneNumberDetector();
22
23  private:
24   friend class PhoneNumberDetectorTest;
25
26   // Implementation of ContentDetector.
27   virtual bool FindContent(const string16::const_iterator& begin,
28                            const string16::const_iterator& end,
29                            size_t* start_pos,
30                            size_t* end_pos,
31                            std::string* content_text) OVERRIDE;
32   virtual GURL GetIntentURL(const std::string& content_text) OVERRIDE;
33   virtual size_t GetMaximumContentLength() OVERRIDE;
34
35   const std::string region_code_;
36
37   DISALLOW_COPY_AND_ASSIGN(PhoneNumberDetector);
38 };
39
40 }  // namespace content
41
42 #endif  // CONTENT_RENDERER_ANDROID_PHONE_NUMBER_DETECTOR_H_