bug 523143: switch protocols using nsTArray to native IPDL arrays

This commit is contained in:
Chris Jones 2009-10-19 14:10:52 -05:00
Родитель ba32537365
Коммит 46ad34660e
3 изменённых файлов: 10 добавлений и 20 удалений

Просмотреть файл

@ -40,14 +40,10 @@
include protocol "PPluginInstance.ipdl"; include protocol "PPluginInstance.ipdl";
include "npapi.h"; include "npapi.h";
include "nsTArray.h";
include "mozilla/plugins/PluginMessageUtils.h"; include "mozilla/plugins/PluginMessageUtils.h";
using NPError; using NPError;
using nsTArray<nsCString>;
using nsTArray<intptr_t>;
using mozilla::ipc::NPRemoteIdentifier; using mozilla::ipc::NPRemoteIdentifier;
using nsTArray<NPRemoteIdentifier>;
namespace mozilla { namespace mozilla {
namespace plugins { namespace plugins {
@ -62,8 +58,8 @@ child:
rpc PPluginInstance(nsCString aMimeType, rpc PPluginInstance(nsCString aMimeType,
uint16_t aMode, uint16_t aMode,
nsTArray<nsCString> aNames, nsCString[] aNames,
nsTArray<nsCString> aValues) nsCString[] aValues)
returns (NPError rv); returns (NPError rv);
rpc ~PPluginInstance() rpc ~PPluginInstance()
@ -92,8 +88,8 @@ parent:
sync NPN_IdentifierIsString(NPRemoteIdentifier aId) sync NPN_IdentifierIsString(NPRemoteIdentifier aId)
returns (bool aIsString); returns (bool aIsString);
sync NPN_GetStringIdentifiers(nsTArray<nsCString> aNames) sync NPN_GetStringIdentifiers(nsCString[] aNames)
returns (nsTArray<NPRemoteIdentifier> aIds); returns (NPRemoteIdentifier[] aIds);
}; };
} // namespace plugins } // namespace plugins

Просмотреть файл

@ -41,14 +41,11 @@ include protocol "PPluginInstance.ipdl";
include "npapi.h"; include "npapi.h";
include "npruntime.h"; include "npruntime.h";
include "nsTArray.h";
include "mozilla/plugins/PluginMessageUtils.h"; include "mozilla/plugins/PluginMessageUtils.h";
using mozilla::ipc::NPRemoteIdentifier; using mozilla::ipc::NPRemoteIdentifier;
using nsTArray<NPRemoteIdentifier>;
using mozilla::void_t; using mozilla::void_t;
using mozilla::null_t; using mozilla::null_t;
using nsTArray<Variant>;
namespace mozilla { namespace mozilla {
namespace plugins { namespace plugins {
@ -80,11 +77,11 @@ both:
returns (bool aHasMethod); returns (bool aHasMethod);
rpc Invoke(NPRemoteIdentifier aId, rpc Invoke(NPRemoteIdentifier aId,
nsTArray<Variant> aArgs) Variant[] aArgs)
returns (Variant aResult, returns (Variant aResult,
bool aSuccess); bool aSuccess);
rpc InvokeDefault(nsTArray<Variant> aArgs) rpc InvokeDefault(Variant[] aArgs)
returns (Variant aResult, returns (Variant aResult,
bool aSuccess); bool aSuccess);
@ -103,10 +100,10 @@ both:
returns (bool aSuccess); returns (bool aSuccess);
rpc Enumerate() rpc Enumerate()
returns (nsTArray<NPRemoteIdentifier> aProperties, returns (NPRemoteIdentifier[] aProperties,
bool aSuccess); bool aSuccess);
rpc Construct(nsTArray<Variant> aArgs) rpc Construct(Variant[] aArgs)
returns (Variant aResult, returns (Variant aResult,
bool aSuccess); bool aSuccess);
}; };

Просмотреть файл

@ -55,9 +55,6 @@ parent:
//----------------------------------------------------------------------------- //-----------------------------------------------------------------------------
// Example solution to exercise // Example solution to exercise
/* /*
include "nsTArray.h";
using nsTArray<nsCString>;
namespace mozilla { namespace mozilla {
namespace test { namespace test {
@ -69,12 +66,12 @@ both:
parent: parent:
GetValue(nsCString key); GetValue(nsCString key);
GetValues(nsTArray<nsCString> keys); GetValues(nsCString[] keys);
sync SetValue(nsCString key, nsCString val) returns (bool ok); sync SetValue(nsCString key, nsCString val) returns (bool ok);
child: child:
TellValue(nsCString key, nsCString val); TellValue(nsCString key, nsCString val);
TellValues(nsTArray<nsCString> keys, nsTArray<nsCString> vals); TellValues(nsCString[] keys, nsCString[] vals);
state START: state START:
send Ping goto START; send Ping goto START;