зеркало из https://github.com/mozilla/pjs.git
Родитель
70ae661e35
Коммит
e3745c2694
|
@ -1,65 +1,66 @@
|
|||
#!gmake
|
||||
#
|
||||
# The contents of this file are subject to the Netscape Public
|
||||
# License Version 1.1 (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.mozilla.org/NPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Igor Kushnirskiy <idk@eng.sun.com>
|
||||
#
|
||||
|
||||
DEPTH=../../../..
|
||||
topsrcdir = @top_srcdir@
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
include $(topsrcdir)/config/config.mk
|
||||
|
||||
LIBRARY_NAME = bcorb
|
||||
MODULE = bcorb
|
||||
IS_COMPONENT = 1
|
||||
|
||||
CPPSRCS = \
|
||||
bcORB.cpp \
|
||||
../src/Allocator.cpp \
|
||||
../src/Call.cpp \
|
||||
../src/Marshaler.cpp \
|
||||
../src/ORB.cpp \
|
||||
../src/UnMarshaler.cpp \
|
||||
../src/util.cpp \
|
||||
$(NULL)
|
||||
|
||||
EXPORTS = \
|
||||
bcORB.h \
|
||||
../public/bcIORB.h \
|
||||
../public/bcDefs.h \
|
||||
../public/bcICall.h \
|
||||
../public/bcIUnMarshaler.h \
|
||||
../public/bcIAllocator.h \
|
||||
../public/bcIMarshaler.h \
|
||||
../public/bcIStub.h \
|
||||
../public/bcIThread.h
|
||||
|
||||
|
||||
CXXFLAGS += -I../public -I../src
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
|
||||
|
||||
|
||||
#!gmake
|
||||
#
|
||||
# The contents of this file are subject to the Netscape Public
|
||||
# License Version 1.1 (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.mozilla.org/NPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Igor Kushnirskiy <idk@eng.sun.com>
|
||||
#
|
||||
|
||||
DEPTH=../../../..
|
||||
topsrcdir = @top_srcdir@
|
||||
srcdir = @srcdir@
|
||||
VPATH = @srcdir@
|
||||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
include $(topsrcdir)/config/config.mk
|
||||
|
||||
LIBRARY_NAME = bcorb
|
||||
MODULE = bcorb
|
||||
IS_COMPONENT = 1
|
||||
|
||||
CPPSRCS = \
|
||||
bcORBComponent.cpp \
|
||||
../src/Allocator.cpp \
|
||||
../src/Call.cpp \
|
||||
../src/Marshaler.cpp \
|
||||
../src/ORB.cpp \
|
||||
../src/UnMarshaler.cpp \
|
||||
../src/util.cpp \
|
||||
$(NULL)
|
||||
|
||||
EXPORTS = \
|
||||
bcIORBComponent.h \
|
||||
bcORBComponentCID.h \
|
||||
../public/bcIORB.h \
|
||||
../public/bcDefs.h \
|
||||
../public/bcICall.h \
|
||||
../public/bcIUnMarshaler.h \
|
||||
../public/bcIAllocator.h \
|
||||
../public/bcIMarshaler.h \
|
||||
../public/bcIStub.h \
|
||||
../public/bcIThread.h
|
||||
|
||||
|
||||
CXXFLAGS += -I../public -I../src
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -0,0 +1,76 @@
|
|||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Sun Microsystems,
|
||||
* Inc. Portions created by Sun are
|
||||
* Copyright (C) 1999 Sun Microsystems, Inc. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Igor Kushnirskiy <idk@eng.sun.com>
|
||||
*/
|
||||
#include "bcORBComponent.h"
|
||||
#include "../src/ORB.h"
|
||||
#include "nsIGenericFactory.h"
|
||||
#include "nsIModule.h"
|
||||
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(bcORBComponent);
|
||||
|
||||
static nsModuleComponentInfo components[] =
|
||||
{
|
||||
{
|
||||
"Black Connect ORB Component",
|
||||
BC_ORBCOMPONENT_CID,
|
||||
BC_ORBCOMPONENT_ContractID,
|
||||
bcORBComponentConstructor
|
||||
}
|
||||
};
|
||||
|
||||
NS_IMPL_NSGETMODULE("BlackConnectORB component",components);
|
||||
|
||||
|
||||
|
||||
NS_IMPL_ISUPPORTS(bcORBComponent,NS_GET_IID(bcORBComponent));
|
||||
|
||||
bcORBComponent::bcORBComponent() :
|
||||
orb(0)
|
||||
{
|
||||
NS_INIT_REFCNT();
|
||||
}
|
||||
|
||||
bcORBComponent::~bcORBComponent() {
|
||||
if (orb) {
|
||||
delete orb; //nb should we destroy it?
|
||||
}
|
||||
}
|
||||
|
||||
NS_IMETHODIMP bcORBComponent::GetORB(bcIORB **_orb) {
|
||||
if (!_orb) {
|
||||
printf("--bcORBComponent::GetORB\n");
|
||||
return NS_ERROR_NULL_POINTER;
|
||||
}
|
||||
if (!orb) {
|
||||
orb = new ORB();
|
||||
}
|
||||
*_orb = orb;
|
||||
return NS_OK;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,47 +0,0 @@
|
|||
#!nmake
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (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.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Sun Microsystems,
|
||||
# Inc. Portions created by Sun are
|
||||
# Copyright (C) 1999 Sun Microsystems, Inc. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Igor Kushnirskiy <idk@eng.sun.com>
|
||||
#
|
||||
|
||||
DEPTH=..\..\..\..
|
||||
|
||||
MAKE_OBJ_TYPE = DLL
|
||||
MODULE=bcorb
|
||||
COMPONENT = 1
|
||||
DLLNAME = bcorb
|
||||
DLL=.\$(OBJDIR)\$(DLLNAME).dll
|
||||
|
||||
OBJS= \
|
||||
.\$(OBJDIR)\bcORB.obj \
|
||||
$(NULL)
|
||||
|
||||
EXPORTS = \
|
||||
bcORB.h \
|
||||
$(NULL)
|
||||
|
||||
LLIBS=$(LLIBS) $(LIBNSPR) $(DIST)\lib\xpcom.lib $(DIST)\lib\bcorbcore.lib
|
||||
|
||||
include <$(DEPTH)\config\rules.mak>
|
||||
|
||||
install:: $(DLL)
|
||||
$(MAKE_INSTALL) $(DLL) $(DIST)\bin\components
|
||||
clobber::
|
||||
rm -f "$(DIST)\bin\components\$(DLLNAME).dll"
|
|
@ -43,7 +43,6 @@ CXXFLAGS += -I$(JDKHOME)/include -I$(JDKHOME)/include/linux $(MOZ_TOOLKIT
|
|||
|
||||
EXTRA_DSO_LDOPTS += \
|
||||
-L$(DIST)/bin/components/ \
|
||||
-lbcorb -lbcxpcomstubs -lbcjavastubs \
|
||||
$(NULL)
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
|
|
@ -22,13 +22,16 @@
|
|||
#include "nsIServiceManager.h"
|
||||
#include "nsCRT.h"
|
||||
#include "bcJavaComponentFactory.h"
|
||||
#include "bcJavaStubsAndProxies.h"
|
||||
#include "bcXPCOMStubsAndProxies.h"
|
||||
#include "bcORB.h"
|
||||
#include "bcIJavaStubsAndProxies.h"
|
||||
#include "bcJavaStubsAndProxiesCID.h"
|
||||
#include "bcIXPCOMStubsAndProxies.h"
|
||||
#include "bcXPCOMStubsAndProxiesCID.h"
|
||||
#include "bcIORBComponent.h"
|
||||
#include "bcORBComponentCID.h"
|
||||
|
||||
static NS_DEFINE_CID(kJavaStubsAndProxies,BC_JAVASTUBSANDPROXIES_CID);
|
||||
static NS_DEFINE_CID(kXPCOMStubsAndProxies,BC_XPCOMSTUBSANDPROXIES_CID);
|
||||
static NS_DEFINE_CID(kORBCIID,BC_ORB_CID);
|
||||
static NS_DEFINE_CID(kORBComponent,BC_ORBCOMPONENT_CID);
|
||||
|
||||
NS_IMPL_ISUPPORTS1(bcJavaComponentFactory, nsIFactory)
|
||||
|
||||
|
@ -47,17 +50,17 @@ bcJavaComponentFactory::~bcJavaComponentFactory() {
|
|||
NS_IMETHODIMP bcJavaComponentFactory::CreateInstance(nsISupports *aOuter, const nsIID & iid, void * *result) {
|
||||
printf("--bcJavaComponentFactory::CreateInstance\n");
|
||||
nsresult r;
|
||||
NS_WITH_SERVICE(bcJavaStubsAndProxies, javaStubsAndProxies, kJavaStubsAndProxies, &r);
|
||||
NS_WITH_SERVICE(bcIJavaStubsAndProxies, javaStubsAndProxies, kJavaStubsAndProxies, &r);
|
||||
if (NS_FAILED(r)) {
|
||||
printf("--bcJavaComponentFactory::CreateInstance javaStubsAndProxies failed \n");
|
||||
return r;
|
||||
}
|
||||
NS_WITH_SERVICE(bcXPCOMStubsAndProxies, xpcomStubsAndProxies, kXPCOMStubsAndProxies, &r);
|
||||
NS_WITH_SERVICE(bcIXPCOMStubsAndProxies, xpcomStubsAndProxies, kXPCOMStubsAndProxies, &r);
|
||||
if (NS_FAILED(r)) {
|
||||
printf("--bcJavaComponentFactory::CreateInstance xpcomStubsAndProxies failed \n");
|
||||
return r;
|
||||
}
|
||||
NS_WITH_SERVICE(bcORB, _orb, kORBCIID, &r);
|
||||
NS_WITH_SERVICE(bcIORBComponent, _orb, kORBComponent, &r);
|
||||
if (NS_FAILED(r)) {
|
||||
printf("--bcJavaComponentFactory::CreateInstance bcORB failed \n");
|
||||
return r;
|
||||
|
|
|
@ -31,14 +31,14 @@
|
|||
#include "nsSupportsArray.h"
|
||||
|
||||
#define BC_JAVACOMPONENTLOADER_ContractID \
|
||||
"@mozilla.org/blackwood/blackconnect/java-component-loader"
|
||||
"@mozilla.org/blackwood/blackconnect/java-component-loader;1"
|
||||
|
||||
/* 0d6b5198-1dd2-11b2-b2f0-ed49ba755db8 */
|
||||
#define BC_JAVACOMPONENTLOADER_CID \
|
||||
{ 0x0d6b5198, 0x1dd2, 0x11b2, \
|
||||
{0xb2, 0xf0, 0xed, 0x49, 0xba, 0x75, 0x5d, 0xb8 }}
|
||||
|
||||
#define JAVACOMPONENTTYPENAME "text/java"
|
||||
#define JAVACOMPONENTTYPENAME "application/java"
|
||||
|
||||
class bcJavaComponentLoader : public nsIComponentLoader {
|
||||
NS_DECL_ISUPPORTS
|
||||
|
|
|
@ -37,7 +37,9 @@ MODULE = bcjavastubs
|
|||
IS_COMPONENT = 1
|
||||
|
||||
EXPORTS = \
|
||||
bcJavaStubsAndProxies.h
|
||||
bcIJavaStubsAndProxies.h \
|
||||
bcJavaStubsAndProxiesCID.h \
|
||||
$(NULL)
|
||||
|
||||
CPPSRCS = \
|
||||
bcJavaMarshalToolkit.cpp \
|
||||
|
@ -80,7 +82,6 @@ endif
|
|||
|
||||
EXTRA_DSO_LDOPTS += \
|
||||
-L$(DIST)/bin/components/ \
|
||||
-lbcorb \
|
||||
$(NULL)
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
|
|
@ -24,7 +24,8 @@
|
|||
#include "bcJavaStubsAndProxies.h"
|
||||
#include "bcJavaStub.h"
|
||||
#include "bcJavaGlobal.h"
|
||||
#include "bcORB.h"
|
||||
#include "bcIORBComponent.h"
|
||||
#include "bcORBComponentCID.h"
|
||||
#include "bcIIDJava.h"
|
||||
#include "nsHashtable.h"
|
||||
|
||||
|
@ -40,7 +41,7 @@ jmethodID bcJavaStubsAndProxies::getInvocationHandlerID = 0;
|
|||
jclass bcJavaStubsAndProxies::org_mozilla_xpcom_ProxyHandler = 0;
|
||||
jmethodID bcJavaStubsAndProxies::getOIDID = 0;
|
||||
|
||||
NS_DEFINE_CID(kORBCIID,BC_ORB_CID);
|
||||
NS_DEFINE_CID(kORBComponent,BC_ORBCOMPONENT_CID);
|
||||
NS_GENERIC_FACTORY_CONSTRUCTOR(bcJavaStubsAndProxies);
|
||||
|
||||
static nsModuleComponentInfo components[] =
|
||||
|
@ -191,7 +192,7 @@ NS_IMETHODIMP bcJavaStubsAndProxies::GetOID(char *location, bcOID *oid) {
|
|||
jstring jstr = env->NewStringUTF(location);
|
||||
jobject object = env->CallStaticObjectMethod(componentLoader, loadComponentID, jstr);
|
||||
bcIStub *stub = new bcJavaStub(object);
|
||||
NS_WITH_SERVICE(bcORB,_orb,kORBCIID,&result);
|
||||
NS_WITH_SERVICE(bcIORBComponent,_orb,kORBComponent,&result);
|
||||
if (NS_FAILED(result)) {
|
||||
PR_LOG(log,PR_LOG_DEBUG,("--bcJavaStubsAndProxies::GetOID failed\n"));
|
||||
return result;
|
||||
|
|
|
@ -1,74 +0,0 @@
|
|||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Sun Microsystems,
|
||||
* Inc. Portions created by Sun are
|
||||
* Copyright (C) 1999 Sun Microsystems, Inc. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Igor Kushnirskiy <idk@eng.sun.com>
|
||||
*/
|
||||
#ifndef __bcJavaStubsAndProxies_h
|
||||
#define __bcJavaStubsAndProxies_h
|
||||
#include "nsISupports.h"
|
||||
#include "jni.h"
|
||||
#include "bcDefs.h"
|
||||
#include "bcIStub.h"
|
||||
#include "bcIORB.h"
|
||||
|
||||
/* 58034ea6-1dd2-11b2-9b58-8630abb8af47 */
|
||||
|
||||
#define BC_JAVASTUBSANDPROXIES_IID \
|
||||
{0x58034ea6, 0x1dd2, 0x11b2, \
|
||||
{0x9b, 0x58, 0x86, 0x30, 0xab, 0xb8, 0xaf,0x47}}
|
||||
|
||||
#define BC_JAVASTUBSANDPROXIES_ContractID "@mozilla.org/blackwood/blackconnect/java-stubs-and-proxies"
|
||||
|
||||
/* 7cadf6e8-1dd2-11b2-9a6e-b1c37844e004 */
|
||||
#define BC_JAVASTUBSANDPROXIES_CID \
|
||||
{0x7cadf6e8, 0x1dd2, 0x11b2, \
|
||||
{0x9a, 0x6e, 0xb1, 0xc3, 0x78,0x44, 0xe0, 0x04}}
|
||||
|
||||
class nsHashtable;
|
||||
class bcJavaStubsAndProxies : public nsISupports {
|
||||
NS_DECL_ISUPPORTS
|
||||
NS_DEFINE_STATIC_IID_ACCESSOR(BC_JAVASTUBSANDPROXIES_IID)
|
||||
NS_IMETHOD GetStub(jobject obj, bcIStub **stub);
|
||||
NS_IMETHOD GetOID(char *location, bcOID *); //load component by location
|
||||
NS_IMETHOD GetOID(jobject object, bcIORB *orb, bcOID *oid);
|
||||
NS_IMETHOD GetProxy(bcOID oid, const nsIID &iid, bcIORB *orb, jobject *proxy);
|
||||
NS_IMETHOD GetInterface(const nsIID &iid, jclass *clazz);
|
||||
bcJavaStubsAndProxies();
|
||||
virtual ~bcJavaStubsAndProxies();
|
||||
protected:
|
||||
void Init(void);
|
||||
static jclass componentLoader;
|
||||
static jmethodID loadComponentID;
|
||||
static jclass proxyFactory;
|
||||
static jmethodID getProxyID;
|
||||
static jmethodID getInterfaceID;
|
||||
|
||||
static jclass java_lang_reflect_Proxy;
|
||||
static jmethodID getInvocationHandlerID;
|
||||
static jclass org_mozilla_xpcom_ProxyHandler;
|
||||
static jmethodID getOIDID;
|
||||
nsHashtable * oid2objectMap;
|
||||
|
||||
};
|
||||
|
||||
#endif /* __bcJavaStubsAndProxies_h */
|
||||
|
||||
|
||||
|
||||
|
|
@ -1,55 +0,0 @@
|
|||
#!nmake
|
||||
#
|
||||
# The contents of this file are subject to the Netscape Public
|
||||
# License Version 1.1 (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.mozilla.org/NPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Igor Kushnirskiy <idk@eng.sun.com>
|
||||
#
|
||||
|
||||
DEPTH=..\..\..\..
|
||||
|
||||
|
||||
MAKE_OBJ_TYPE = DLL
|
||||
MODULE=bcjavastubs
|
||||
COMPONENT = 1
|
||||
DLLNAME = bcjavastubs
|
||||
DLL=.\$(OBJDIR)\$(DLLNAME).dll
|
||||
|
||||
EXPORTS = \
|
||||
bcJavaStubsAndProxies.h
|
||||
|
||||
OBJS= \
|
||||
.\$(OBJDIR)\bcJavaMarshalToolkit.obj \
|
||||
.\$(OBJDIR)\bcJavaStub.obj \
|
||||
.\$(OBJDIR)\bcJavaGlobal.obj \
|
||||
.\$(OBJDIR)\bcJavaStubsAndProxies.obj \
|
||||
.\$(OBJDIR)\bcIIDJava.obj \
|
||||
.\$(OBJDIR)\org_mozilla_xpcom_Utilities.obj \
|
||||
.\$(OBJDIR)\org_mozilla_xpcom_Debug.obj \
|
||||
$(NULL)
|
||||
|
||||
LINCS=-I$(JDKHOME)\include -I$(JDKHOME)\include\win32
|
||||
|
||||
LLIBS=$(LLIBS) $(LIBNSPR) $(DIST)\lib\xpcom.lib $(JDKHOME)\lib\jvm.lib
|
||||
|
||||
include <$(DEPTH)\config\rules.mak>
|
||||
|
||||
install:: $(DLL)
|
||||
$(MAKE_INSTALL) $(DLL) $(DIST)\bin\components
|
||||
clobber::
|
||||
rm -f "$(DIST)\bin\components\$(DLLNAME).dll"
|
|
@ -43,8 +43,9 @@ CPPSRCS = \
|
|||
$(NULL)
|
||||
|
||||
EXPORTS = \
|
||||
bcXPCOMStubsAndProxies.h
|
||||
|
||||
bcIXPCOMStubsAndProxies.h \
|
||||
bcXPCOMStubsAndProxiesCID.h \
|
||||
$(NULL)
|
||||
LIBS = \
|
||||
-lxpcom \
|
||||
-lxptinfo \
|
||||
|
@ -53,7 +54,6 @@ LIBS = \
|
|||
|
||||
EXTRA_DSO_LDOPTS += \
|
||||
-L$(DIST)/bin/components/ \
|
||||
-lbcorb \
|
||||
$(NULL)
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
|
|
@ -0,0 +1,44 @@
|
|||
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
|
||||
* The contents of this file are subject to the Mozilla Public
|
||||
* License Version 1.1 (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.mozilla.org/MPL/
|
||||
*
|
||||
* Software distributed under the License is distributed on an "AS
|
||||
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
* implied. See the License for the specific language governing
|
||||
* rights and limitations under the License.
|
||||
*
|
||||
* The Original Code is mozilla.org code.
|
||||
*
|
||||
* The Initial Developer of the Original Code is Sun Microsystems,
|
||||
* Inc. Portions created by Sun are
|
||||
* Copyright (C) 1999 Sun Microsystems, Inc. All
|
||||
* Rights Reserved.
|
||||
*
|
||||
* Contributor(s):
|
||||
* Igor Kushnirskiy <idk@eng.sun.com>
|
||||
*/
|
||||
|
||||
#ifndef __bcIXPCOMStubsAndProxies_h__
|
||||
#define __bcIXPCOMStubsAndProxies_h__
|
||||
#include "nsISupports.h"
|
||||
#include "bcDefs.h"
|
||||
|
||||
/* 843ff582-1dd2-11b2-84b5-b43ba3ad3ef4 */
|
||||
#define BC_XPCOMSTUBSANDPROXIES_IID \
|
||||
{0x843ff582, 0x1dd2, 0x11b2, \
|
||||
{0x84, 0xb5,0xb4, 0x3b, 0xa3, 0xad, 0x3e, 0xf4}}
|
||||
|
||||
class bcIStub;
|
||||
class bcIORB;
|
||||
|
||||
class bcIXPCOMStubsAndProxies : public nsISupports {
|
||||
public:
|
||||
NS_DEFINE_STATIC_IID_ACCESSOR(BC_XPCOMSTUBSANDPROXIES_IID)
|
||||
NS_IMETHOD GetStub(nsISupports *obj, bcIStub **stub) = 0;
|
||||
NS_IMETHOD GetOID(nsISupports *obj, bcIORB *orb, bcOID *oid) = 0;
|
||||
NS_IMETHOD GetProxy(bcOID oid, const nsIID &iid, bcIORB *orb, nsISupports **proxy) = 0;
|
||||
};
|
||||
|
||||
#endif
|
|
@ -23,12 +23,10 @@
|
|||
#include "nsCOMPtr.h"
|
||||
#include "bcXPCOMMarshalToolkit.h"
|
||||
#include "nsIServiceManager.h"
|
||||
#include "bcORB.h"
|
||||
#include "bcXPCOMStubsAndProxies.h"
|
||||
#include "nsCRT.h"
|
||||
#include "bcXPCOMLog.h"
|
||||
|
||||
static NS_DEFINE_CID(kORBCIID,BC_ORB_CID);
|
||||
static NS_DEFINE_CID(kXPCOMStubsAndProxies,BC_XPCOMSTUBSANDPROXIES_CID);
|
||||
|
||||
bcXPCOMMarshalToolkit::bcXPCOMMarshalToolkit(PRUint16 _methodIndex, nsIInterfaceInfo *_interfaceInfo,
|
||||
|
@ -395,17 +393,11 @@ bcXPCOMMarshalToolkit::UnMarshalElement(void *data, bcIUnMarshaler *um, nsXPTPar
|
|||
um->ReadSimple(&iid,bc_T_IID);
|
||||
nsISupports *proxy = NULL;
|
||||
if (oid != 0) {
|
||||
NS_WITH_SERVICE(bcORB, _orb, kORBCIID, &r);
|
||||
if (NS_FAILED(r)) {
|
||||
return r; //nb am I sure about that?
|
||||
}
|
||||
NS_WITH_SERVICE(bcXPCOMStubsAndProxies, xpcomStubsAndProxies,
|
||||
kXPCOMStubsAndProxies, &r);
|
||||
if (NS_FAILED(r)) {
|
||||
return r;
|
||||
}
|
||||
bcIORB *orb;
|
||||
_orb->GetORB(&orb);
|
||||
xpcomStubsAndProxies->GetProxy(oid, iid, orb,&proxy);
|
||||
}
|
||||
*(nsISupports**)data = proxy;
|
||||
|
|
|
@ -34,7 +34,7 @@ static nsModuleComponentInfo components[] =
|
|||
{
|
||||
"Black Connect XPCOM stubs and proxies",
|
||||
BC_XPCOMSTUBSANDPROXIES_CID,
|
||||
BC_XPCOMSTUBSANDPROXIES_PROGID,
|
||||
BC_XPCOMSTUBSANDPROXIES_ContractID,
|
||||
bcXPCOMStubsAndProxiesConstructor
|
||||
}
|
||||
};
|
||||
|
|
|
@ -19,29 +19,17 @@
|
|||
* Contributor(s):
|
||||
* Igor Kushnirskiy <idk@eng.sun.com>
|
||||
*/
|
||||
|
||||
#ifndef __bcXPCOMStubsAndProxies_h
|
||||
#define __bcXPCOMStubsAndProxies_h
|
||||
#include "nsISupports.h"
|
||||
#include "bcIXPCOMStubsAndProxies.h"
|
||||
#include "bcIORB.h"
|
||||
#include "bcIStub.h"
|
||||
#include "bcXPCOMStubsAndProxiesCID.h"
|
||||
|
||||
|
||||
/* 843ff582-1dd2-11b2-84b5-b43ba3ad3ef4 */
|
||||
|
||||
#define BC_XPCOMSTUBSANDPROXIES_IID \
|
||||
{0x843ff582, 0x1dd2, 0x11b2, \
|
||||
{0x84, 0xb5,0xb4, 0x3b, 0xa3, 0xad, 0x3e, 0xf4}}
|
||||
|
||||
#define BC_XPCOMSTUBSANDPROXIES_PROGID "component://netscape/blackwood/blackconnect/xpcom-stubs-and-proxies"
|
||||
|
||||
#define BC_XPCOMSTUBSANDPROXIES_CID \
|
||||
{0x7de11df0, 0x1dd2, 0x11b2, \
|
||||
{0xb1, 0xe1, 0xd9, 0xd5, 0xc6, 0xdd, 0x06, 0x8b }}
|
||||
|
||||
class nsSupportsHashtable;
|
||||
|
||||
class bcXPCOMStubsAndProxies : public nsISupports {
|
||||
class bcXPCOMStubsAndProxies : public bcIXPCOMStubsAndProxies {
|
||||
NS_DECL_ISUPPORTS
|
||||
NS_DEFINE_STATIC_IID_ACCESSOR(BC_XPCOMSTUBSANDPROXIES_IID)
|
||||
NS_IMETHOD GetStub(nsISupports *obj, bcIStub **stub);
|
||||
|
|
|
@ -1,55 +0,0 @@
|
|||
#!nmake
|
||||
#
|
||||
# The contents of this file are subject to the Mozilla Public
|
||||
# License Version 1.1 (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.mozilla.org/MPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Sun Microsystems,
|
||||
# Inc. Portions created by Sun are
|
||||
# Copyright (C) 1999 Sun Microsystems, Inc. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
# Igor Kushnirskiy <idk@eng.sun.com>
|
||||
#
|
||||
|
||||
DEPTH=..\..\..
|
||||
|
||||
MAKE_OBJ_TYPE = DLL
|
||||
DLLNAME = bcxpcomstubs
|
||||
DLL=.\$(OBJDIR)\$(DLLNAME).dll
|
||||
MODULE = bcxpcomstubs
|
||||
COMPONENT = 1
|
||||
|
||||
|
||||
OBJS= \
|
||||
.\$(OBJDIR)\bcXPCOMProxy.obj \
|
||||
.\$(OBJDIR)\bcXPCOMStub.obj \
|
||||
.\$(OBJDIR)\bcXPCOMMarshalToolkit.obj \
|
||||
.\$(OBJDIR)\bcXPCOMStubsAndProxies.obj \
|
||||
.\$(OBJDIR)\bcXPCOMLog.obj \
|
||||
$(NULL)
|
||||
|
||||
EXPORTS = \
|
||||
bcXPCOMStubsAndProxies.h \
|
||||
$(NULL)
|
||||
|
||||
LLIBS= \
|
||||
$(DIST)\lib\xpcom.lib \
|
||||
$(LIBNSPR) \
|
||||
$(NULL)
|
||||
|
||||
include <$(DEPTH)\config\rules.mak>
|
||||
|
||||
install:: $(DLL)
|
||||
$(MAKE_INSTALL) $(DLL) $(DIST)\bin\components
|
||||
clobber::
|
||||
rm -f "$(DIST)\bin\components\$(DLLNAME).dll"
|
|
@ -1,52 +0,0 @@
|
|||
#!gmake
|
||||
#
|
||||
# The contents of this file are subject to the Netscape Public
|
||||
# License Version 1.1 (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.mozilla.org/NPL/
|
||||
#
|
||||
# Software distributed under the License is distributed on an "AS
|
||||
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
|
||||
# implied. See the License for the specific language governing
|
||||
# rights and limitations under the License.
|
||||
#
|
||||
# The Original Code is mozilla.org code.
|
||||
#
|
||||
# The Initial Developer of the Original Code is Netscape
|
||||
# Communications Corporation. Portions created by Netscape are
|
||||
# Copyright (C) 1998 Netscape Communications Corporation. All
|
||||
# Rights Reserved.
|
||||
#
|
||||
# Contributor(s):
|
||||
#
|
||||
# Igor Kushnirskiy <idk@eng.sun.com>
|
||||
|
||||
DEPTH = ../../../../
|
||||
topsrcdir = ../../../../
|
||||
srcdir = .
|
||||
VPATH = .
|
||||
|
||||
include $(DEPTH)/config/autoconf.mk
|
||||
|
||||
include $(topsrcdir)/config/config.mk
|
||||
|
||||
LIBRARY_NAME = bcTest
|
||||
MODULE = bcTest
|
||||
IS_COMPONENT = 1
|
||||
XPIDLSRCS = bcITest.idl
|
||||
|
||||
CPPSRCS = \
|
||||
bcTestImpl.cpp \
|
||||
$(NULL)
|
||||
|
||||
EXTRA_DSO_LDOPTS += \
|
||||
-L$(DIST)/bin/components/ \
|
||||
-lbcorb -lbcxpcomstubs \
|
||||
$(NULL)
|
||||
|
||||
|
||||
include $(topsrcdir)/config/rules.mk
|
||||
|
||||
|
||||
|
||||
|
Загрузка…
Ссылка в новой задаче