/* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 8 -*- */
/*
* bonobo-activation: A library for accessing bonobo-activation-server.
*
* Copyright (C) 1999, 2000 Red Hat, Inc.
* Copyright (C) 2000 Eazel, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Library General Public License for more details.
*
* You should have received a copy of the GNU Library General Public
* License along with this library; if not, write to the Free
* Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*
* Author: Elliot Lee <sopwith@redhat.com>
*/
#ifndef BONOBO_ACTIVATION_PRIVATE_H
#define BONOBO_ACTIVATION_PRIVATE_H
#include <config.h>
#include <string.h>
#include <bonobo-activation/bonobo-activation-base-service.h>
#include <bonobo-activation/Bonobo_ActivationContext.h>
#define BONOBO_ACTIVATION_FACTORY_PRIVATE_TIMEOUT 1000
extern GStaticRecMutex _bonobo_activation_guard;
#define BONOBO_ACTIVATION_LOCK() g_static_rec_mutex_lock (&_bonobo_activation_guard)
#define BONOBO_ACTIVATION_UNLOCK() g_static_rec_mutex_unlock (&_bonobo_activation_guard)
void bonobo_activation_timeout_reg_check_set (gboolean on);
gboolean bonobo_activation_timeout_reg_check (gpointer data);
void bonobo_activation_server_fork_init (gboolean threaded);
typedef CORBA_Object (*BonoboForkReCheckFn) (const Bonobo_ActivationEnvironment *environemnt,
const char *act_iid,
gpointer user_data);
CORBA_Object bonobo_activation_server_by_forking (const char **cmd,
gboolean set_process_group,
int fd_arg,
const Bonobo_ActivationEnvironment *environemnt,
const char *od_iorstr,
const char *act_iid,
gboolean use_new_loop,
BonoboForkReCheckFn re_check,
gpointer user_data,
CORBA_Environment *ev);
void bonobo_activation_base_service_init (void);
int bonobo_activation_ior_fd_get (void);
CORBA_Object bonobo_activation_activation_context_get (void);
CORBA_Object bonobo_activation_object_directory_get (const char *username,
const char *hostname);
void bonobo_activation_init_activation_env (void);
extern gboolean bonobo_activation_private;
CORBA_Object bonobo_activation_internal_activation_context_get_extended (
gboolean existing_only,
CORBA_Environment *ev);
CORBA_Object bonobo_activation_internal_service_get_extended (
const BonoboActivationBaseService *base_service,
gboolean existing_only,
CORBA_Environment *ev);
gboolean Bonobo_ActivationEnvironment_match (const Bonobo_ActivationEnvironment *a,
const Bonobo_ActivationEnvironment *b);
void Bonobo_ActivationEnvValue_set (Bonobo_ActivationEnvValue *env,
const char *name,
const char *value);
void Bonobo_ActivationEnvValue_copy (Bonobo_ActivationEnvValue *dest,
Bonobo_ActivationEnvValue *src);
Bonobo_ActivationClient bonobo_activation_client_get (void);
/* used only for unit testing */
CORBA_char * _bonobo_activation_get_activation_env_value (const char *name);
#ifdef G_OS_WIN32
char *_bonobo_activation_win32_replace_prefix (const char *runtime_prefix,
const char *configure_time_path);
const char *_bonobo_activation_win32_get_prefix (void);
const char *_bonobo_activation_win32_get_server_libexecdir (void);
const char *_bonobo_activation_win32_get_serverinfodir (void);
const char *_bonobo_activation_win32_get_server_confdir (void);
const char *_bonobo_activation_win32_get_localedir (void);
#endif
#endif /* BONOBO_ACTIVATION_PRIVATE_H */
syntax highlighted by Code2HTML, v. 0.9.1