Updated Branches: refs/heads/bb10_ext_qnx 79113f997 -> feba03c38
Whoops, accidently added these files Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/commit/feba03c3 Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/tree/feba03c3 Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/diff/feba03c3 Branch: refs/heads/bb10_ext_qnx Commit: feba03c38826c14fd03aa6bbc591589a83e6df1b Parents: a3f11f6 Author: Tim Kim <tim....@nitobi.com> Authored: Tue Oct 23 15:53:29 2012 -0700 Committer: Tim Kim <tim....@nitobi.com> Committed: Tue Oct 23 15:53:29 2012 -0700 ---------------------------------------------------------------------- framework/ext-qnx/public/plugin.cpp | 320 --------------------------- framework/ext-qnx/public/plugin.h | 70 ------ framework/ext-qnx/public/tokenizer.cpp | 222 ------------------- framework/ext-qnx/public/tokenizer.h | 55 ----- framework/ext-qnx/src/memory_js.cpp | 172 -------------- framework/ext-qnx/src/memory_js.hpp | 50 ---- 6 files changed, 0 insertions(+), 889 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/feba03c3/framework/ext-qnx/public/plugin.cpp ---------------------------------------------------------------------- diff --git a/framework/ext-qnx/public/plugin.cpp b/framework/ext-qnx/public/plugin.cpp deleted file mode 100644 index 6906275..0000000 --- a/framework/ext-qnx/public/plugin.cpp +++ /dev/null @@ -1,320 +0,0 @@ -#include "plugin.h" -#include "tokenizer.h" - -#ifdef _WINDOWS -#include <windows.h> -BOOL APIENTRY DllMain( HANDLE hModule, - DWORD ul_reason_for_call, - LPVOID lpReserved ) -{ - return TRUE; -} -#else -#include <errno.h> -#include <string.h> - -extern int errno; -#endif - -SendPluginEv SendPluginEvent; - -string g_GetSysErrMsg( void ) -{ - string strError = "Unknown"; - // Problem loading -#ifdef _WINDOWS - int nErrorCode = GetLastError(); - LPTSTR s; - if ( ::FormatMessage( FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, - NULL, nErrorCode, 0, ( LPTSTR ) &s, 0, NULL ) ) - { - strError = s; - } - else - { - char szBuf[ 20 ]; - _snprintf_s( szBuf, _countof(szBuf), 19, "%d", nErrorCode ); - strError = szBuf; - } -#else - char szError[80]; - if ( strerror_r( errno, szError, sizeof(szError) ) ) - { - strError = "no description found"; - } - else - { - strError = szError; - } -#endif - return strError; -} - -void g_sleep( unsigned int mseconds ) -{ -#ifdef _WINDOWS - Sleep( mseconds ); -#else - usleep( mseconds * 1000 ); -#endif -} - -string& g_trim( string& str ) -{ - // Whitespace characters - char whspc[] = " \t\r\n\v\f"; - - // Whack off first part - size_t pos = str.find_first_not_of( whspc ); - - if ( pos != string::npos ) - str.replace( 0, pos, "" ); - - // Whack off trailing stuff - pos = str.find_last_not_of( whspc ); - - if ( pos != string::npos ) - str.replace( pos + 1, str.length() - pos, "" ); - - return str; -} - -void g_tokenize( const string& str, const string& delimiters, vector<string>& tokens ) -{ - tokenize( str, tokens, delimiters ); -} - -char* SetEventFunc( SendPluginEv funcPtr ) -{ - static char * szObjList = onGetObjList(); - SendPluginEvent = funcPtr; - return szObjList; -} - - -const int nMAXSIZE = 512; -char* g_pszRetVal = NULL; - -//----------------------------------------------------------- -// Map from an object Id to an object instance -//----------------------------------------------------------- -typedef std::map<string, JSExt*> StringToJExt_T; - -//----------------------------------------------------------- -// Map from a browser context to an id mapping -//----------------------------------------------------------- -typedef std::map<void*, StringToJExt_T*> VoidToMap_T; - -VoidToMap_T g_context2Map; - -class GlobalSharedModule -{ - -public: - GlobalSharedModule( void ) - { - g_pszRetVal = new char[ nMAXSIZE ]; - } - - ~GlobalSharedModule() - { - delete [] g_pszRetVal; - - VoidToMap_T::iterator posMaps; - - for ( posMaps = g_context2Map.begin(); posMaps != g_context2Map.end(); ++posMaps ) - { - StringToJExt_T& id2Obj = *posMaps->second; - StringToJExt_T::iterator posMap; - - for ( posMap = id2Obj.begin(); posMap != id2Obj.end(); ++posMap ) - { - JSExt* pJSExt = posMap->second; - - if ( pJSExt->CanDelete() ) - { - delete pJSExt; - } - } - - id2Obj.erase( id2Obj.begin(), id2Obj.end() ); - } - - g_context2Map.erase( g_context2Map.begin(), g_context2Map.end() ); - } -}; - -GlobalSharedModule g_sharedModule; - -char* g_str2global( const string& strRetVal ) -{ - int nLen = strRetVal.size(); - - if ( nLen >= nMAXSIZE ) - { - delete [] g_pszRetVal; - g_pszRetVal = new char[ nLen + 1 ]; - } - - else - { - // To minimaize the number of memory reallocations, the assumption - // is that in most times this will be the case - delete [] g_pszRetVal; - g_pszRetVal = new char[ nMAXSIZE ]; - } - - strcpy( g_pszRetVal, strRetVal.c_str() ); - return g_pszRetVal; -} - -bool g_unregisterObject( const string& strObjId, void* pContext ) -{ - // Called by the plugin extension implementation - // if the extension handles the deletion of its object - - StringToJExt_T * pID2Obj = NULL; - - VoidToMap_T::iterator iter = g_context2Map.find( pContext ); - - if ( iter != g_context2Map.end() ) - { - pID2Obj = iter->second; - } - else - { - return false; - } - - StringToJExt_T& mapID2Obj = *pID2Obj; - - StringToJExt_T::iterator r = mapID2Obj.find( strObjId ); - - if ( r == mapID2Obj.end() ) - { - return false; - } - - mapID2Obj.erase( strObjId ); - return true; -} - -char* InvokeFunction( const char* szCommand, void* pContext ) -{ - StringToJExt_T * pID2Obj = NULL; - - VoidToMap_T::iterator iter = g_context2Map.find( pContext ); - - if ( iter != g_context2Map.end() ) - { - pID2Obj = iter->second; - } - else - { - pID2Obj = new StringToJExt_T; - g_context2Map[ pContext ] = pID2Obj; - } - - StringToJExt_T& mapID2Obj = *pID2Obj; - - string strFullCommand = szCommand; - vector<string> arParams; - g_tokenize( strFullCommand, " ", arParams ); - string strCommand = arParams[ 0 ]; - string strRetVal = szERROR; - - if ( strCommand == szCREATE ) - { - string strClassName = arParams[ 1 ]; - string strObjId = arParams[ 2 ]; - - StringToJExt_T::iterator r = mapID2Obj.find( strObjId ); - - if ( r != mapID2Obj.end() ) - { - strRetVal += strObjId; - strRetVal += " :Object already exists."; - return g_str2global( strRetVal ); - } - - JSExt* pJSExt = onCreateObject( strClassName, strObjId ); - - if ( pJSExt == NULL ) - { - strRetVal += strObjId; - strRetVal += " :Unknown object type "; - strRetVal += strClassName; - return g_str2global( strRetVal ); - } - - pJSExt->m_pContext = pContext; - mapID2Obj[ strObjId ] = pJSExt; - - strRetVal = szOK; - strRetVal += strObjId; - return g_str2global( strRetVal ); - } - else - if ( strCommand == szINVOKE ) - { - string strObjId = arParams[ 1 ]; - string strMethod = arParams[ 2 ]; - - StringToJExt_T::iterator r = mapID2Obj.find( strObjId ); - - if ( r == mapID2Obj.end() ) - { - strRetVal += strObjId; - strRetVal += " :No object found for id."; - return g_str2global( strRetVal ); - } - - JSExt* pJSExt = r->second; - - size_t nLoc = strFullCommand.find( strObjId ); - - if ( nLoc == string::npos ) - { - strRetVal += strObjId; - strRetVal += " :Internal InvokeMethod error."; - return g_str2global( strRetVal ); - } - - if ( strMethod == szDISPOSE ) - { - StringToJExt_T::iterator r = mapID2Obj.find( strObjId ); - - if ( r == mapID2Obj.end() ) - { - strRetVal = szERROR; - strRetVal += strObjId; - return g_str2global( strRetVal ); - } - - JSExt * pJSExt = mapID2Obj[ strObjId ]; - - if ( pJSExt->CanDelete() ) - { - delete pJSExt; - } - - mapID2Obj.erase( strObjId ); - strRetVal = szOK; - strRetVal += strObjId; - return g_str2global( strRetVal ); - } - - size_t nSuffixLoc = nLoc + strObjId.size(); - string strInvoke = strFullCommand.substr( nSuffixLoc ); - strInvoke = g_trim( strInvoke ); - strRetVal = pJSExt->InvokeMethod( strInvoke ); - return g_str2global( strRetVal ); - } - - strRetVal += " :Unknown command "; - strRetVal += strCommand; - return g_str2global( strRetVal ); -} - -//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/feba03c3/framework/ext-qnx/public/plugin.h ---------------------------------------------------------------------- diff --git a/framework/ext-qnx/public/plugin.h b/framework/ext-qnx/public/plugin.h deleted file mode 100644 index 4ef7116..0000000 --- a/framework/ext-qnx/public/plugin.h +++ /dev/null @@ -1,70 +0,0 @@ -#ifndef _PLUGIN_H -#define _PLUGIN_H - -#include <map> -#include <string> -#include <vector> -#include <unistd.h> -//#include "tokenizer.h" - -using namespace std; - -//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -//%% Functions exported by this DLL -//%% Should always be only SetEventFunc and InvokeFunction -//%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -// g++ requires extern "C" otherwise the names of SetEventFunc and InvokeFunction -// are mangled C++ style. MS Visual Studio doesn't seem to care though. -extern "C" -{ - typedef void (*SendPluginEv)( const char* szEvent, void* pContext ); - char* SetEventFunc(SendPluginEv funcPtr); - char* InvokeFunction( const char* szCommand, void* pContext ); -} - -// JNEXT Framework function of the form: -// typedef void (*SendPluginEv)( const char* szEvent ); -// used to notify JavaScript of an asynchronous event -extern SendPluginEv SendPluginEvent; - -///////////////////////////////////////////////////////////////////////// -// Constants and methods common to all JNEXT extensions types -///////////////////////////////////////////////////////////////////////// -#define szERROR "Error " -#define szOK "Ok " - -#define szDISPOSE "Dispose" -#define szINVOKE "InvokeMethod" -#define szCREATE "CreateObj" - -///////////////////////////////////////////////////////////////////////// -// Utility functions -///////////////////////////////////////////////////////////////////////// -string& g_trim( string& str ); -void g_tokenize(const string& str,const string& delimiters, vector<string>& tokens); -char* g_str2static( const string& strRetVal ); -void g_sleep( unsigned int mseconds ); -bool g_unregisterObject( const string& strObjId, void* pContext ); - - -///////////////////////////////////////////////////////////////////////// -// Abstract extension object -///////////////////////////////////////////////////////////////////////// -class JSExt -{ -public: - virtual ~JSExt() {}; - virtual string InvokeMethod( const string& strCommand ) = 0; - virtual bool CanDelete( void ) = 0; - virtual void TryDelete( void ) {} -public: - void* m_pContext; -}; - -///////////////////////////////////////////////////////////////////////// -// Callback functions to be implemented by the plugin implementation -///////////////////////////////////////////////////////////////////////// -extern char* onGetObjList( void ); -extern JSExt* onCreateObject( const string& strClassName, const string& strObjId ); - -#endif http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/feba03c3/framework/ext-qnx/public/tokenizer.cpp ---------------------------------------------------------------------- diff --git a/framework/ext-qnx/public/tokenizer.cpp b/framework/ext-qnx/public/tokenizer.cpp deleted file mode 100644 index 4a39573..0000000 --- a/framework/ext-qnx/public/tokenizer.cpp +++ /dev/null @@ -1,222 +0,0 @@ -/************************************************************************ -The zlib/libpng License - -Copyright (c) 2006 Joerg Wiedenmann - -This software is provided 'as-is', without any express or implied warranty. -In no event will the authors be held liable for any damages arising from -the use of this software. - -Permission is granted to anyone to use this software for any purpose, -including commercial applications, and to alter it and redistribute it -freely, subject to the following restrictions: - -1. The origin of this software must not be misrepresented; -you must not claim that you wrote the original software. -If you use this software in a product, an acknowledgment -in the product documentation would be appreciated but is -not required. - -2. Altered source versions must be plainly marked as such, -and must not be misrepresented as being the original software. - -3. This notice may not be removed or altered from any source distribution. - -***********************************************************************/ - -/******************************************************************** - created: 2006-01-28 - filename: tokenizer.cpp - author: J�rg Wiedenmann - - purpose: A tokenizer function which provides a very - customizable way of breaking up strings. - - history: 2006-01-28, Original version - 2006-03-04, Fixed a small parsing bug, thanks Elias. -*********************************************************************/ - -#include "tokenizer.h" - -using namespace std; - -void tokenize ( const string& str, vector<string>& result, - const string& delimiters, const string& delimiters_preserve, - const string& quote, const string& esc ) -{ - // clear the vector - if ( false == result.empty() ) - { - result.clear(); - } - - string::size_type pos = 0; // the current position (char) in the string - char ch = 0; // buffer for the current character - char delimiter = 0; // the buffer for the delimiter char which - // will be added to the tokens if the delimiter - // is preserved - char current_quote = 0; // the char of the current open quote - bool quoted = false; // indicator if there is an open quote - string token; // string buffer for the token - bool token_complete = false; // indicates if the current token is - // read to be added to the result vector - string::size_type len = str.length(); // length of the input-string - - // for every char in the input-string - while ( len > pos ) - { - // get the character of the string and reset the delimiter buffer - ch = str.at(pos); - delimiter = 0; - - // assume ch isn't a delimiter - bool add_char = true; - - // check ... - - // ... if the delimiter is an escaped character - bool escaped = false; // indicates if the next char is protected - if ( false == esc.empty() ) // check if esc-chars are provided - { - if ( string::npos != esc.find_first_of(ch) ) - { - // get the escaped char - ++pos; - if ( pos < len ) // if there are more chars left - { - // get the next one - ch = str.at(pos); - - // add the escaped character to the token - add_char = true; - } - else // cannot get any more characters - { - // don't add the esc-char - add_char = false; - } - - // ignore the remaining delimiter checks - escaped = true; - } - } - - // ... if the delimiter is a quote - if ( false == quote.empty() && false == escaped ) - { - // if quote chars are provided and the char isn't protected - if ( string::npos != quote.find_first_of(ch) ) - { - // if not quoted, set state to open quote and set - // the quote character - if ( false == quoted ) - { - quoted = true; - current_quote = ch; - - // don't add the quote-char to the token - add_char = false; - } - else // if quote is open already - { - // check if it is the matching character to close it - if ( current_quote == ch ) - { - // close quote and reset the quote character - quoted = false; - current_quote = 0; - - // don't add the quote-char to the token - add_char = false; - } - } // else - } - } - - // ... if the delimiter isn't preserved - if ( false == delimiters.empty() && false == escaped && - false == quoted ) - { - // if a delimiter is provided and the char isn't protected by - // quote or escape char - if ( string::npos != delimiters.find_first_of(ch) ) - { - // if ch is a delimiter and the token string isn't empty - // the token is complete - if ( false == token.empty() ) // BUGFIX: 2006-03-04 - { - token_complete = true; - } - - // don't add the delimiter to the token - add_char = false; - } - } - - // ... if the delimiter is preserved - add it as a token - bool add_delimiter = false; - if ( false == delimiters_preserve.empty() && false == escaped && - false == quoted ) - { - // if a delimiter which will be preserved is provided and the - // char isn't protected by quote or escape char - if ( string::npos != delimiters_preserve.find_first_of(ch) ) - { - // if ch is a delimiter and the token string isn't empty - // the token is complete - if ( false == token.empty() ) // BUGFIX: 2006-03-04 - { - token_complete = true; - } - - // don't add the delimiter to the token - add_char = false; - - // add the delimiter - delimiter = ch; - add_delimiter = true; - } - } - - - // add the character to the token - if ( true == add_char ) - { - // add the current char - token.push_back( ch ); - } - - // add the token if it is complete - if ( true == token_complete && false == token.empty() ) - { - // add the token string - result.push_back( token ); - - // clear the contents - token.clear(); - - // build the next token - token_complete = false; - } - - // add the delimiter - if ( true == add_delimiter ) - { - // the next token is the delimiter - string delim_token; - delim_token.push_back( delimiter ); - result.push_back( delim_token ); - - // REMOVED: 2006-03-04, Bugfix - } - - // repeat for the next character - ++pos; - } // while - - // add the final token - if ( false == token.empty() ) - { - result.push_back( token ); - } -} http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/feba03c3/framework/ext-qnx/public/tokenizer.h ---------------------------------------------------------------------- diff --git a/framework/ext-qnx/public/tokenizer.h b/framework/ext-qnx/public/tokenizer.h deleted file mode 100644 index 75f567c..0000000 --- a/framework/ext-qnx/public/tokenizer.h +++ /dev/null @@ -1,55 +0,0 @@ -/************************************************************************ -The zlib/libpng License - -Copyright (c) 2006 Joerg Wiedenmann - -This software is provided 'as-is', without any express or implied warranty. -In no event will the authors be held liable for any damages arising from -the use of this software. - -Permission is granted to anyone to use this software for any purpose, -including commercial applications, and to alter it and redistribute it -freely, subject to the following restrictions: - -1. The origin of this software must not be misrepresented; - you must not claim that you wrote the original software. - If you use this software in a product, an acknowledgment - in the product documentation would be appreciated but is - not required. - -2. Altered source versions must be plainly marked as such, - and must not be misrepresented as being the original software. - -3. This notice may not be removed or altered from any source distribution. - -***********************************************************************/ - -/******************************************************************** - created: 2006-01-28 - filename: tokenizer.cpp - author: J�rg Wiedenmann - - purpose: A tokenizer function which provides a very - customizable way of breaking up strings. -*********************************************************************/ - -#include <vector> -#include <string> -using namespace std; - -// Function to break up a string into tokens -// -// Parameters: -//----------- -// str = the input string that will be tokenized -// result = the tokens for str -// delimiters = the delimiter characters -// delimiters preserve = same as above, but the delimiter characters -// will be put into the result as a token -// quote = characters to protect the enclosed characters -// esc = characters to protect a single character -// - -void tokenize ( const string& str, vector<string>& result, - const string& delimiters, const string& delimiters_preserve = "", - const string& quote = "\"", const string& esc = "\\" ); http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/feba03c3/framework/ext-qnx/src/memory_js.cpp ---------------------------------------------------------------------- diff --git a/framework/ext-qnx/src/memory_js.cpp b/framework/ext-qnx/src/memory_js.cpp deleted file mode 100644 index 5862b11..0000000 --- a/framework/ext-qnx/src/memory_js.cpp +++ /dev/null @@ -1,172 +0,0 @@ -/* -* Copyright 2012 Research In Motion Limited. -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ - -#include <string> -#include <sstream> -#include <sys/stat.h> -#include <sys/types.h> -#include <stdio.h> -#include <stdlib.h> -#include "memory_js.hpp" - -using namespace std; - -/** - * Default constructor. - */ -Memory::Memory(const std::string& id) : m_id(id) { - m_thread = 0; -} - -/** - * Memory destructor. - */ -Memory::~Memory() { -} - -/** - * This method returns the list of objects implemented by this native - * extension. - */ -char* onGetObjList() { - static char name[] = "Memory"; - return name; -} - -/** - * This method is used by JNext to instantiate the Memory object when - * an object is created on the JavaScript server side. - */ -JSExt* onCreateObject(const string& className, const string& id) { - if (className == "Memory") { - return new Memory(id); - } - - return NULL; -} - -/** - * Method used by JNext to determine if the object can be deleted. - */ -bool Memory::CanDelete() { - return true; -} - -/** - * It will be called from JNext JavaScript side with passed string. - * This method implements the interface for the JavaScript to native binding - * for invoking native code. This method is triggered when JNext.invoke is - * called on the JavaScript side with this native objects id. - */ -string Memory::InvokeMethod(const string& command) { - // Determine which function should be executed - if (command == "getMemoryNative") { - return convertLongToString(getMemory()); - } else if (command == "monitorMemoryNative") { - return MonitorMemoryNative(); - } else { - return "Unsupported Method"; - } -} - -/** - * Thread that retrieves the current amount of free memory every second and - * sends it to the JavaScript side using an event. The thread shall continue - * to retrieve the memory usage until the native object is destroyed on the - * JavaScript side. - */ -void* MemoryThread(void* parent) { - Memory *pParent = static_cast<Memory *>(parent); - - // Endless loop that collect memory information and send it to JNext JavaScript side - while (true) { - pParent->SendMemoryInfo(); - sleep(1); - } - - return NULL; -} - -/** - * Method responsible for starting the thread to get memory usage. Only one - * thread can be created per native JavaScript instance. This method returns - * true if the thread was created successfully and false othrewise. - */ -bool Memory::StartThread() { - if (!m_thread) { - pthread_attr_t thread_attr; - pthread_attr_init(&thread_attr); - pthread_attr_setdetachstate(&thread_attr, PTHREAD_CREATE_DETACHED); - - pthread_create(&m_thread, &thread_attr, MemoryThread, - static_cast<void *>(this)); - pthread_attr_destroy(&thread_attr); - return true; - } else { - return false; - } -} - -/** - * Method used to start the get memory usage thread. The method shall return a - * string to the JavaScript side indicating whether or not the memory - * monitoring was initialized. - */ -string Memory::MonitorMemoryNative() { - if (StartThread()) { - return "Memory monitored"; - } else { - return "Memory already being monitored"; - } -} - -/** - * Method used by the getMemoryUsage thread to pass the amount of free memory - * on the JavaScript side by firing an event. - */ -void Memory::SendMemoryInfo() { - std::string eventString = "FreeMemory " + convertLongToString(getMemory()); - NotifyEvent(eventString); -} - -// Notifies JavaScript of an event -void Memory::NotifyEvent(const std::string& event) { - std::string eventString = m_id + " "; - eventString.append(event); - SendPluginEvent(eventString.c_str(), m_pContext); -} - -/** - * Method that retreives the current free memory of OS. - */ -long Memory::getMemory() { - struct stat statbuf; - paddr_t freemem; - - stat("/proc", &statbuf); - freemem = (paddr_t) statbuf.st_size; - - return freemem; -} - -/** - * Utility function to convert a long into a string. - */ -string Memory::convertLongToString(long l) { - stringstream ss; - ss << l; - return ss.str(); -} http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/feba03c3/framework/ext-qnx/src/memory_js.hpp ---------------------------------------------------------------------- diff --git a/framework/ext-qnx/src/memory_js.hpp b/framework/ext-qnx/src/memory_js.hpp deleted file mode 100644 index e8a47a2..0000000 --- a/framework/ext-qnx/src/memory_js.hpp +++ /dev/null @@ -1,50 +0,0 @@ -/* -* Copyright 2012 Research In Motion Limited. -* -* Licensed under the Apache License, Version 2.0 (the "License"); -* you may not use this file except in compliance with the License. -* You may obtain a copy of the License at -* -* http://www.apache.org/licenses/LICENSE-2.0 -* -* Unless required by applicable law or agreed to in writing, software -* distributed under the License is distributed on an "AS IS" BASIS, -* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -* See the License for the specific language governing permissions and -* limitations under the License. -*/ -#ifndef MEMORY_JS_HPP_ -#define MEMORY_JS_HPP_ - -#include <string> -#include <pthread.h> -#include "../public/plugin.h" - -class Memory: public JSExt { - -public: - explicit Memory(const std::string& id); - virtual ~Memory(); - -// Interfaces of JSExt - virtual bool CanDelete(); - virtual std::string InvokeMethod(const std::string& command); - -// Methods for the memory thread - void SendMemoryInfo(); - void NotifyEvent(const std::string& event); - -private: -// Utility functions relate to memory function - long getMemory(); - string convertLongToString(long l); - -// Memory monitoring thread function - string MonitorMemoryNative(); - bool StartThread(); - - std::string m_id; - pthread_t m_thread; -}; - -#endif /* MEMORY_JS_HPP_ */