* not part of the build *

fix for 71948


git-svn-id: svn://10.0.0.236/trunk@91546 18797224-902f-48f8-a5cc-f745e15eee43
This commit is contained in:
idk%eng.sun.com
2001-04-06 03:40:13 +00:00
parent b90f126f1c
commit 024e162a59
23 changed files with 481 additions and 45 deletions

View File

@@ -23,11 +23,18 @@
package org.mozilla.xpcom;
public class Components {
public static nsIComponentManager getComponentManager() {
return componentMgr;
}
public static void setComponentManager(nsIComponentManager mgr) {
componentMgr = mgr;
}
private static nsIComponentManager componentMgr = null;
public static nsIComponentManager getComponentManager() {
return componentMgr;
}
public static void setComponentManager(nsIComponentManager mgr) {
componentMgr = mgr;
}
public static nsIXPIDLServiceManager getServiceManager() {
return serviceMgr;
}
public static void setServiceManager(nsIXPIDLServiceManager mgr) {
serviceMgr = mgr;
}
private static nsIComponentManager componentMgr = null;
private static nsIXPIDLServiceManager serviceMgr = null;
};

View File

@@ -46,7 +46,6 @@ $(COMPONENT).jar.comp: manifest $(CLASSES)
$(JDKHOME)/bin/jar cvfm $(COMPONENT).jar.comp manifest *.class
.java.class:
$(JDKHOME)/bin/javac -classpath .:../classes:$(DIST)/classes $<
bcIBlackConnectInit.java : bcIBlackConnectInit.idl
install-component: $(COMPONENT).jar.comp $(COMPONENT).jar.info

View File

@@ -22,12 +22,18 @@
#include "bcIBlackConnectInit.h"
#include "nsIModule.h"
#include "nsIXPIDLServiceManager.h"
#include "bcIXPCOMWrappers.h"
#include "bcXPCOMWrappersCID.h"
NS_DEFINE_CID(kXPCOMWrappers,BC_XPCOMWRAPPERS_CID);
static int counter = 0; //we do not need to call it on unload time;
extern "C" NS_EXPORT nsresult NSGetModule(nsIComponentManager *compMgr,
nsIFile *location,
nsIModule** result) //I am using it for initialization only
{
static int counter = 0; //we do not need to call it on unload time;
nsresult r;
if (counter == 0) {
counter ++;
@@ -38,11 +44,21 @@ extern "C" NS_EXPORT nsresult NSGetModule(nsIComponentManager *compMgr,
(void**)&blackConnectInit);
if (NS_SUCCEEDED(r)) {
nsIComponentManager* cm;
r = NS_GetGlobalComponentManager(&cm);
if (NS_SUCCEEDED(r)) {
blackConnectInit->InitComponentManager(cm);
}
}
nsIXPIDLServiceManager *sm;
r = NS_GetGlobalComponentManager(&cm);
if (NS_SUCCEEDED(r)) {
blackConnectInit->InitComponentManager(cm);
}
NS_WITH_SERVICE(bcIXPCOMWrappers,xpcomWrappers,kXPCOMWrappers,&r);
nsIID * wrapperIID;
if (NS_SUCCEEDED(r)) {
r = xpcomWrappers->GetWrapper((nsISupports*)NULL,NS_GET_IID(nsIServiceManager),&wrapperIID, (nsISupports**)&sm);
if (NS_SUCCEEDED(r)) {
printf("--[c++]about to call blackConnectInit->InitServiceManager(sm)\n");
blackConnectInit->InitServiceManager(sm);
}
}
}
}
return NS_ERROR_FAILURE;
}

View File

@@ -39,7 +39,14 @@ public class bcBlackConnectInit implements bcIBlackConnectInit {
Components.setComponentManager(cm);
Debug.log("Components.setComponentManager(cm);");
}
/* void initServiceManager (in nsIXPIDLServiceManager sm); */
public void initServiceManager(nsIXPIDLServiceManager sm) {
Components.setServiceManager(sm);
Debug.log("Components.setServiceManager(sm);");
}
static {
InterfaceRegistry.register(nsIComponentManager.class);
InterfaceRegistry.register(nsIXPIDLServiceManager.class);
}
}

View File

@@ -1,5 +1,28 @@
/* -*- Mode: IDL; 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 "nsISupports.idl"
#include "nsIComponentManager.idl"
#include "nsIXPIDLServiceManager.idl"
#pragma prefix
[scriptable, uuid(d4867a7e-1dd1-11b2-a009-b111ab5d7639)]
@@ -7,4 +30,10 @@
interface bcIBlackConnectInit : nsISupports
{
void initComponentManager(in nsIComponentManager cm);
void initServiceManager(in nsIXPIDLServiceManager sm);
};

View File

@@ -29,8 +29,8 @@ JAVAXPIDLSRCS = nsISupports.idl \
nsIComponentManager.idl \
nsIFactory.idl \
nsISupportsPrimitives.idl \
nsIXPIDLServiceManager.idl \
$(NULL)
include $(DEPTH)/config/rules.mk
include ../config/rules.mk

View File

@@ -29,6 +29,7 @@ JAVAXPIDLSRCS = nsISupports.idl \
nsIComponentManager.idl \
nsIFactory.idl \
nsISupportsPrimitives.idl \
nsIXPIDLServiceManager \
$(NULL)
include <$(DEPTH)\config\rules.mak>

View File

@@ -41,8 +41,4 @@ CPPSRCS = \
CXXFLAGS += -I$(JDKHOME)/include -I$(JDKHOME)/include/linux $(MOZ_TOOLKIT_REGISTRY_CFLAGS) -D_REENTRANT -DOJI_DISABLE -I$(CONNECT_SRC)/public
EXTRA_DSO_LDOPTS += \
-L$(DIST)/bin/components/ \
$(NULL)
include $(topsrcdir)/config/rules.mk

View File

@@ -86,7 +86,3 @@ EXTRA_DSO_LDOPTS += \
include $(topsrcdir)/config/rules.mk
CCC += $(CXXFLAGS) # I want to have $(JDKHOME)/include before $(DIST) include
test:
echo $(OS_ARCH)

View File

@@ -42,6 +42,7 @@ jclass bcJavaStubsAndProxies::org_mozilla_xpcom_ProxyHandler = 0;
jmethodID bcJavaStubsAndProxies::getOIDID = 0;
NS_DEFINE_CID(kORBComponent,BC_ORBCOMPONENT_CID);
NS_GENERIC_FACTORY_CONSTRUCTOR(bcJavaStubsAndProxies);
static nsModuleComponentInfo components[] =
@@ -54,27 +55,7 @@ static nsModuleComponentInfo components[] =
}
};
//NS_IMPL_NSGETMODULE("BlackConnect Java stubs and proxies",components_stubs);
PRUint32 NSGetModule_components_count =
sizeof(components) / sizeof(components[0]);
nsModuleComponentInfo* NSGetModule_components_idk = (components);
extern "C" NS_EXPORT nsresult NSGetModule(nsIComponentManager *servMgr,
nsIFile* location,
nsIModule** result)
{
return NS_NewGenericModule("BlackConnect Java stubs and proxies",
NSGetModule_components_count,
NSGetModule_components_idk,
nsnull, result);
}
NS_IMPL_NSGETMODULE("BlackConnect Java stubs and proxies",components);
NS_IMPL_ISUPPORTS(bcJavaStubsAndProxies,NS_GET_IID(bcJavaStubsAndProxies));

View File

@@ -39,7 +39,10 @@ public class bcJavaSample implements bcIJavaSample {
return result;
}
public void test0() {
System.out.println("--[java]bcJavaSample.test0 ");
System.out.println("--[java]bcJavaSample.test0");
nsIXPIDLServiceManager sm = Components.getServiceManager();
nsISupports service = sm.getService(new CID("f0032af2-1dd1-11b2-bb75-c242dcb4f47a"), new IID("1f29f516-1dd2-11b2-9751-f129d72134d0"));
}
public void test1(int l) {
System.out.println("--[java]bcJavaSample.test1 "+l+"\n");