| OLD | NEW |
| 1 #!/usr/bin/env python | 1 #!/usr/bin/env python |
| 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. | 2 # Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 3 # Use of this source code is governed by a BSD-style license that can be | 3 # Use of this source code is governed by a BSD-style license that can be |
| 4 # found in the LICENSE file. | 4 # found in the LICENSE file. |
| 5 | 5 |
| 6 # TODO (qinmin): Need to refactor this file as base should not know about | 6 # TODO (qinmin): Need to refactor this file as base should not know about |
| 7 # higher level concepts. Currently this file has knowledge about higher level | 7 # higher level concepts. Currently this file has knowledge about higher level |
| 8 # java classes. | 8 # java classes. |
| 9 | 9 |
| 10 """Extracts native methods from a Java file and generates the JNI bindings. | 10 """Extracts native methods from a Java file and generates the JNI bindings. |
| (...skipping 133 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 144 'Landroid/webkit/ValueCallback', | 144 'Landroid/webkit/ValueCallback', |
| 145 'Ljava/io/InputStream', | 145 'Ljava/io/InputStream', |
| 146 'Ljava/nio/ByteBuffer', | 146 'Ljava/nio/ByteBuffer', |
| 147 'Ljava/util/Vector', | 147 'Ljava/util/Vector', |
| 148 ] | 148 ] |
| 149 app_param_list = [ | 149 app_param_list = [ |
| 150 'Landroid/graphics/SurfaceTexture', | 150 'Landroid/graphics/SurfaceTexture', |
| 151 'Lcom/google/android/apps/chrome/AutofillData', | 151 'Lcom/google/android/apps/chrome/AutofillData', |
| 152 'Lcom/google/android/apps/chrome/ChromeHttpAuthHandler', | 152 'Lcom/google/android/apps/chrome/ChromeHttpAuthHandler', |
| 153 'Lcom/google/android/apps/chrome/ChromeContextMenuInfo', | 153 'Lcom/google/android/apps/chrome/ChromeContextMenuInfo', |
| 154 'Lcom/google/android/apps/chrome/ChromeWindow', |
| 154 'Lcom/google/android/apps/chrome/OmniboxSuggestion', | 155 'Lcom/google/android/apps/chrome/OmniboxSuggestion', |
| 155 'Lcom/google/android/apps/chrome/PageInfoViewer', | 156 'Lcom/google/android/apps/chrome/PageInfoViewer', |
| 156 'Lcom/google/android/apps/chrome/Tab', | 157 'Lcom/google/android/apps/chrome/Tab', |
| 157 'Lcom/google/android/apps/chrome/database/SQLiteCursor', | 158 'Lcom/google/android/apps/chrome/database/SQLiteCursor', |
| 158 'Lcom/google/android/apps/chrome/infobar/InfoBarContainer', | 159 'Lcom/google/android/apps/chrome/infobar/InfoBarContainer', |
| 159 'Lcom/google/android/apps/chrome/infobar/InfoBarContainer$NativeInfoBar', | 160 'Lcom/google/android/apps/chrome/infobar/InfoBarContainer$NativeInfoBar', |
| 160 ('Lcom/google/android/apps/chrome/preferences/ChromeNativePreferences$' | 161 ('Lcom/google/android/apps/chrome/preferences/ChromeNativePreferences$' |
| 161 'PasswordListObserver'), | 162 'PasswordListObserver'), |
| 162 'Lorg/chromium/android_webview/AwContents', | 163 'Lorg/chromium/android_webview/AwContents', |
| 163 'Lorg/chromium/android_webview/AwContentsClient', | 164 'Lorg/chromium/android_webview/AwContentsClient', |
| 164 'Lorg/chromium/android_webview/AwHttpAuthHandler', | 165 'Lorg/chromium/android_webview/AwHttpAuthHandler', |
| 165 'Lorg/chromium/android_webview/AwWebContentsDelegate', | 166 'Lorg/chromium/android_webview/AwWebContentsDelegate', |
| 166 'Lorg/chromium/base/SystemMessageHandler', | 167 'Lorg/chromium/base/SystemMessageHandler', |
| 167 'Lorg/chromium/chrome/browser/ChromeBrowserProvider$BookmarkNode', | 168 'Lorg/chromium/chrome/browser/ChromeBrowserProvider$BookmarkNode', |
| 168 'Lorg/chromium/chrome/browser/ChromeWebContentsDelegateAndroid', | 169 'Lorg/chromium/chrome/browser/ChromeWebContentsDelegateAndroid', |
| 169 'Lorg/chromium/chrome/browser/FindMatchRectsDetails', | 170 'Lorg/chromium/chrome/browser/FindMatchRectsDetails', |
| 170 'Lorg/chromium/chrome/browser/FindNotificationDetails', | 171 'Lorg/chromium/chrome/browser/FindNotificationDetails', |
| 171 'Lorg/chromium/chrome/browser/JavascriptAppModalDialog', | 172 'Lorg/chromium/chrome/browser/JavascriptAppModalDialog', |
| 172 'Lorg/chromium/chrome/browser/ProcessUtils', | 173 'Lorg/chromium/chrome/browser/ProcessUtils', |
| 173 'Lorg/chromium/chrome/browser/SelectFileDialog', | |
| 174 'Lorg/chromium/chrome/browser/component/web_contents_delegate_android/WebC
ontentsDelegateAndroid', | 174 'Lorg/chromium/chrome/browser/component/web_contents_delegate_android/WebC
ontentsDelegateAndroid', |
| 175 'Lorg/chromium/content/browser/ContentVideoView', | 175 'Lorg/chromium/content/browser/ContentVideoView', |
| 176 'Lorg/chromium/content/browser/ContentViewClient', | 176 'Lorg/chromium/content/browser/ContentViewClient', |
| 177 'Lorg/chromium/content/browser/ContentViewCore', | 177 'Lorg/chromium/content/browser/ContentViewCore', |
| 178 'Lorg/chromium/content/browser/DeviceOrientation', | 178 'Lorg/chromium/content/browser/DeviceOrientation', |
| 179 'Lorg/chromium/content/browser/FindNotificationDetails', | 179 'Lorg/chromium/content/browser/FindNotificationDetails', |
| 180 'Lorg/chromium/content/browser/InterceptedRequestData', | 180 'Lorg/chromium/content/browser/InterceptedRequestData', |
| 181 'Lorg/chromium/content/browser/JavaInputStream', | 181 'Lorg/chromium/content/browser/JavaInputStream', |
| 182 'Lorg/chromium/content/browser/LocationProvider', | 182 'Lorg/chromium/content/browser/LocationProvider', |
| 183 'Lorg/chromium/content/browser/SandboxedProcessArgs', | 183 'Lorg/chromium/content/browser/SandboxedProcessArgs', |
| 184 'Lorg/chromium/content/browser/SandboxedProcessConnection', | 184 'Lorg/chromium/content/browser/SandboxedProcessConnection', |
| 185 'Lorg/chromium/content/app/SandboxedProcessService', | 185 'Lorg/chromium/content/app/SandboxedProcessService', |
| 186 'Lorg/chromium/content/browser/TouchPoint', | 186 'Lorg/chromium/content/browser/TouchPoint', |
| 187 'Lorg/chromium/content/browser/WaitableNativeEvent', | 187 'Lorg/chromium/content/browser/WaitableNativeEvent', |
| 188 'Lorg/chromium/content/browser/WebContentsObserverAndroid', | 188 'Lorg/chromium/content/browser/WebContentsObserverAndroid', |
| 189 'Lorg/chromium/content/common/DeviceInfo', | 189 'Lorg/chromium/content/common/DeviceInfo', |
| 190 'Lorg/chromium/content/common/SurfaceTextureListener', | 190 'Lorg/chromium/content/common/SurfaceTextureListener', |
| 191 'Lorg/chromium/media/MediaPlayerListener', | 191 'Lorg/chromium/media/MediaPlayerListener', |
| 192 'Lorg/chromium/net/NetworkChangeNotifier', | 192 'Lorg/chromium/net/NetworkChangeNotifier', |
| 193 'Lorg/chromium/net/ProxyChangeListener', | 193 'Lorg/chromium/net/ProxyChangeListener', |
| 194 'Lorg/chromium/ui/gfx/NativeWindow', |
| 195 'Lorg/chromium/ui/SelectFileDialog', |
| 194 ] | 196 ] |
| 195 if param == 'byte[][]': | 197 if param == 'byte[][]': |
| 196 return '[[B' | 198 return '[[B' |
| 197 prefix = '' | 199 prefix = '' |
| 198 # Array? | 200 # Array? |
| 199 if param[-2:] == '[]': | 201 if param[-2:] == '[]': |
| 200 prefix = '[' | 202 prefix = '[' |
| 201 param = param[:-2] | 203 param = param[:-2] |
| 202 # Generic? | 204 # Generic? |
| 203 if '<' in param: | 205 if '<' in param: |
| (...skipping 780 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 984 input_file = options.input_file | 986 input_file = options.input_file |
| 985 output_file = None | 987 output_file = None |
| 986 if options.output_dir: | 988 if options.output_dir: |
| 987 root_name = os.path.splitext(os.path.basename(input_file))[0] | 989 root_name = os.path.splitext(os.path.basename(input_file))[0] |
| 988 output_file = os.path.join(options.output_dir, root_name) + '_jni.h' | 990 output_file = os.path.join(options.output_dir, root_name) + '_jni.h' |
| 989 GenerateJNIHeader(input_file, output_file, options.namespace) | 991 GenerateJNIHeader(input_file, output_file, options.namespace) |
| 990 | 992 |
| 991 | 993 |
| 992 if __name__ == '__main__': | 994 if __name__ == '__main__': |
| 993 sys.exit(main(sys.argv)) | 995 sys.exit(main(sys.argv)) |
| OLD | NEW |