##
##  JacORB configuration options
##

########################################
#                                      #
#   Initial references configuration   #
#                                      #
########################################

#
# URLs where IORs are stored (used in orb.resolve_initial_service())
# DO EDIT these! (Only those that you are planning to use,
# of course ;-).
#
# The ORBInitRef references are created on ORB startup time. In the
# cases of the services themselves, this may lead to exceptions being
# displayed (because the services aren't up yet). These exceptions
# are handled properly and cause no harm!

#ORBInitRef.NameService=corbaloc::160.45.110.41:38693/StandardNS/NameServer%2DPOA/_root
#ORBInitRef.NameService=file:/c:/NS_Ref
ORBInitRef.NameService=http://www.x.y.z/~user/NS_Ref
#ORBInitRef.TradingService=http://www.x.y.z/~user/TraderRef


########################################
#                                      #
#      Export of corbaloc IORs         #
#                                      #
########################################

# allow for more readable corbaloc URLs by mapping the 
# actual object key to an arbitrary string the mapping 
# below would permit clients of a name service to
# access it using corbaloc::ipaddress:portnum/NameService
# Note: it is NOT necessary to define this property for
# the name service here because this is done already in the
# code of the ns implementation

# example: 
#jacorb.orb.objectKeyMap.NameService=StandardNS/NameServer-POA/_root

##################################
#                                #
#   Appligator support           #
#                                #
##################################

# The appligator acts as a remote proxy for objects behind a firewall.
# The appligator is started on a fixed port corresponding
# to a hole in the firewall via which the proxy can be accessed.
#
# Remote clients can access one or more appligators depending on
# configuration. The 'jacorb.ProxyServer.URL' is the default
# appligator to use. Multiple additional appligators can be
# configured for remote subnets using the subnet form of URL
# configuration. The subnet for a scoped appligator is calculated
# by the logical anding of the network and netmask values.
#
# Clients are redirected to an appligator via the use of a client
# side portable interceptor. This can be installed by configuring
# a portable ORB initializer 'org.jacorb.proxy.ProxyClientInitializer'.
#
# The network and netmask configuration properties can optionally be
# used to configure the network for the local client. If this is done
# the calls to objects within the local subnet will not be redirected.
#
# The 'jacorb.ProxyServer.ID' property can be used to configure the
# object identity for the appligator IOR. If not set this defaults
# to 'Appligator'. For additionaly security it is recommended that
# this be set to some other value.
#
# The 'jacorb.ProxyServer.Name' property is the name by which the
# appligator adds itself to the name service (if available) on
# startup.

#jacorb.ProxyServer.Name=Appligator
#jacorb.ProxyServer.ID=Appligator
#jacorb.ProxyServer.Netmask=255.255.255.0
#jacorb.ProxyServer.Network=160.45.110.0
#jacorb.ProxyServer.URL=<url>
#jacorb.ProxyServer.URL-<network1>-<netmask1>=<url1>
#jacorb.ProxyServer.URL-<network2>-<netmask2>=<url2>

##################################
#                                #
#   ORB version number output    #
#                                #
##################################

# if on, the ORB's version number is printed
# any time the ORB is initialized
jacorb.orb.print_version=on

##################################
#                                #
#   Debug output configuration   #
#                                #
##################################

# use (java) jacorb.util.CAD to generate an apropriate
# verbosity level
# 0 = off
# 1 = important messages and exceptions
# 2 = informational messages and exceptions
# >= 3 = debug-level output (may confuse the unaware user :-)
jacorb.verbosity=1

# where does output go? Terminal is default
#jacorb.logfile=LOGFILEPATH

# hexdump outgoing messages
jacorb.debug.dump_outgoing_messages=off

# hexdump incoming messages
jacorb.debug.dump_incoming_messages=off


##################################################
#                                                #
#    WARNING: The following properties should    #
#    only be edited by the expert user. They     #
#    can be left untouched in most cases!        #
#                                                #
##################################################



################################
#                              #
#   Basic ORB Configuration    #
#                              #
################################

# the GIOP minor version number to use for newly created IORs
jacorb.giop_minor_version=2

# number of retries if connection cannot directly be established
jacorb.retries=5

# how many msecs. do we wait between retries
jacorb.retry_interval=500

# size of network buffers for outgoing messages
jacorb.outbuf_size=2048

# log2 of maximum buffer size managed by the internal
# buffer manager.
#
# This is NOT the maximum buffer size that
# can be used, but just the largest size of buffers that
# will be kept and managed. This value will be added to
# an internal constant of 5, so the real value in bytes
# is 2**(5+maxManagedBufSize-1). You only need to increase this
# value if you are dealing with LOTS of LARGE data structures.
# You may decrease it to make the buffer manager release large
# buffers immediately rather than keeping them for later
# reuse.
jacorb.maxManagedBufSize=18

# Wait the specified number of msecs for a reply to a request. If
# exceeded, a org.omg.CORBA.IMP_LIMIT exception will be thrown
#jacorb.client.pending_reply_timeout=0

# client-side connection idle timeout, set no non-zero to stop
# blocking after so many msecs.
#
# WARNING: This is independent of pending replies, i.e. the connection
# can also close, if the timeout is exceeded, but there are unanswered
# requests.
#jacorb.connection.client_idle_timeout=0

# max time a server keeps a connection open if nothing happens
#
# WARNING: This is independent of the requests currently being
# processed, i.e. the connection can also close, if the timeout is
# exceeded, but there are unanswered requests.
#
#jacorb.connection.server_timeout=10000

#jacorb.reference_caching=off

#
# The following property specifies the class which is used for
# reference caching. WeakHashtable uses WeakReferences, so entries
# get gc'ed if only the Hashtable has a reference to them. This
# is useful if you have many references to short-living non-persistent
# CORBA objects. It is only available for java 1.2 and above.
#
# On the other hand the standard Hashtable keeps the references until
# they are explicitely deleted by calling _release(). This is useful
# for persistent and long-living CORBA objects.
#
#jacorb.hashtable_class=org.jacorb.util.WeakHashtable
#
jacorb.hashtable_class=java.util.Hashtable

# use GIOP 1.2 byte order markers (since CORBA 2.4-5)
jacorb.use_bom=off

# add additional IIOP 1.0 profiles even if we are using IIOP 1.2
jacorb.giop.add_1_0_profiles=off

###########################################
#                                         #
#         Socket Factories                #
#                                         #
###########################################

# A factory design pattern is used for the creation of sockets and server
# sockets.
# The jacorb.net.socket_factory property can be used to configure
# a socket factory that must implement the operations defined in the
# interface org.jacorb.orb.factory.SocketFactory.
# The jacorb.net.server_socket_factory property can be used to configure a
# server socket factory that must implement the operations defined in the
# interface org.jacorb.orb.factory.ServerSocketFactory.
#
#jacorb.net.socket_factory=org.jacorb.orb.factory.DefaultSocketFactory
#jacorb.net.server_socket_factory=org.jacorb.orb.factory.DefaultServerSocketFactory
#
# An additional socket factory is supported that allows for the configuration
# of maximum and minimum port numbers that can be used. This can be used to
# enable firewall traversal via a fixed port range. To use this socket factory
# configure the following two properties.
#
#jacorb.net.socket_factory.port.min
#jacorb.net.socket_factory.port.max

###########################################
#                                         #
#         BiDirectional GIOP              #
#                                         #
###########################################

# uncomment this initializer if you want to use BiDirectional GIOP

#org.omg.PortableInterceptor.ORBInitializerClass.bidir_init=org.jacorb.orb.connection.BiDirConnectionInitializer


###########################################
#                                         #
#       Proxy address in IOR              #
#                                         #
###########################################

#
# with these two properties it is possible to
# tell the ORB what IP/port IORs should contain,
# if the ServerSockets IP/port can't be used
# (e.g. for traffic through a firewall).
#
# WARNING: this is just "dumb" replacing, so you
# have to take care of your configuration!
#

#jacorb.ior_proxy_host=1.2.3.4
#jacorb.ior_proxy_port=4711


###########################################
#                                         #
#   The Object Adapter Internet Address   #
#                                         #
###########################################

# IP address on multi-homed host (this gets encoded in
# object references). NOTE: Adresses like 127.0.0.X
# will only be accessible from the same machine!
#OAIAddr=1.2.3.4
#OAPort=4711


############################
#                          #
#   Default Interceptors   #
#   Please leave them in!  #
#                          #
############################
org.omg.PortableInterceptor.ORBInitializerClass.standard_init=org.jacorb.orb.standardInterceptors.IORInterceptorInitializer



###############################################
#                                             #
#   Implementation Repository Configuration   #
#                                             #
###############################################
# Switch off to avoid contacting the ImR on every server start-up
jacorb.use_imr=off

# Switch off if you don't want to write the ImR address into server IORs
# (ignored if jacorb.use_imr=off)
jacorb.use_imr_endpoint=on

# if set to "on", servers that don't already have an entry on their
# first call to the imr, will get automatically registered. Otherwise,
# an UnknownServer exception is thrown.
jacorb.imr.allow_auto_register=off

# if set to "on", the imr will try to "ping" every object reference,
# that it is going to return. If the reference is not alive, TRANSIENT
# is thrown.
jacorb.imr.check_object_liveness=off

ORBInitRef.ImplementationRepository=http://www.x.y.z/~user/ImR_Ref

jacorb.imr.table_file=Z:\table.dat
jacorb.imr.backup_file=z:\backup.dat
jacorb.imr.ior_file=/home/bwana/brose/public_html/ImR_Ref
jacorb.imr.timeout=
jacorb.imr.no_of_poas=
jacorb.imr.no_of_servers=
# Start IMR on a fixed port (equivilant to -p option)
jacorb.imr.port_number=

# how many millis should the imr wait, until a connection from an
# application client is terminated. Default is 2000.
jacorb.imr.connection_timeout=2000

# the implementation name, should be set to a different
# name in the code of persistent servers
jacorb.implname=StandardImplName

#
# This is supposed to be a generic startup string for everything
# that calls Runtime.exec(). Might be replaced by jaco[.bat].
#
jacorb.java_exec=java -Dorg.omg.CORBA.ORBClass=org.jacorb.orb.ORB -Dorg.omg.CORBA.ORBSingletonClass=org.jacorb.orb.ORBSingleton



#########################
#                       #
#   SSL Configuration   #
#                       #
#########################

#
# The port number used by SSL, will be dynmically assigned
# by default
#

#OASSLPort=4711

# This interceptor must be set if programs need access to
# certificates using the CORBA Security API, SSL works also
# without this interceptor

#org.omg.PortableInterceptor.ORBInitializerClass.ForwardInit=org.jacorb.security.ssl.SecurityServiceInitializer


# qualified classname of access decision object
jacorb.security.access_decision=org.jacorb.security.level2.AccessDecisionImpl

# list of qualified classnames of principal authenticator objects,
# separated by commas (no whitespaces!). The first entry (that can
# be successfully created) will be available through the
# principal_authenticator property.
jacorb.security.principal_authenticator=org.jacorb.security.level2.PrincipalAuthenticatorImpl

# the qualified classname of the ssl socket factory class
#jacorb.ssl.socket_factory=org.jacorb.security.ssl.sun_jsse.SSLSocketFactory
jacorb.ssl.socket_factory=org.jacorb.security.ssl.iaik.SSLSocketFactory

# the qualified classname of the ssl server socket factory class
#jacorb.ssl.server_socket_factory=org.jacorb.security.ssl.sun_jsse.SSLServerSocketFactory
jacorb.ssl.server_socket_factory=org.jacorb.security.ssl.iaik.SSLServerSocketFactory

# exchange ssl client server roles to enforce client authentication, but
# attention: this causes problems with peers that not prepared to handle
# this role change
jacorb.security.change_ssl_roles=off

# IIOP/SSL parameters (numbers are hex values, without the leading "0x"):
# NoProtection = 1
# EstablishTrustInClient = 40
# EstablishTrustInTarget = 20
# mutual authentication = 60
# please see the programming guide for more explanation

jacorb.security.support_ssl=off

jacorb.security.ssl.client.supported_options=0
jacorb.security.ssl.client.required_options=0

jacorb.security.ssl.server.supported_options=0
jacorb.security.ssl.server.required_options=0

#
# If set, the following two values will be placed in the IOR, if
# "corbaloc:ssliop" ssliop.
#
# If not set, only EstablishTrustInTarget is used for both supported
# and required options. EstablishTrustInClient is not set, and the
# rest of the Association Options aren't currently used anyway.
#jacorb.security.ssl.corbaloc_ssliop.supported_options=0
#jacorb.security.ssl.corbaloc_ssliop.required_options=0

# The name and location of the keystore. This may be absolute or
# relative to the home directory.
#
# NOTE (for Sun JSSE users): The "javax.net.ssl.trustStore[Password]"
# properties don't seem to take effect, so you may want to add trusted
# certificates to "normal" keystores. In this case, please set the
# property "jacorb.security.jsse.trustees_from_ks"is to "on", so trusted
# certificates are taken from the keystore instead of a dedicated
# truststore.
jacorb.security.keystore=
jacorb.security.keystore_password=


#
# IAIK specific settings
#

# files with public key certs of trusted CAs
#
# WARNING: If no CA certs are present, the IAIK chain verifier will
# accept ALL otherwise valid chains!
#
jacorb.security.trustees=

# the name of the default key alias to look up in the keystore
jacorb.security.default_user=
jacorb.security.default_password=

# have iaiks ssl classes print debug output to stdout
jacorb.security.iaik_debug=off

#
# Sun JSSE specific settings
#
# Use the keystore to take trusted certs from.
jacorb.security.jsse.trustees_from_ks=off

# A comma-separated (no whitespaces!) list of cipher suite names. See
# the JSSE docs on how to obtain the correct cipher suite strings
jacorb.security.ssl.server.cipher_suites=
jacorb.security.ssl.client.cipher_suites=

#########################
#                       #
#   POA Configuration   #
#                       #
#########################

# displays a GUI monitoring tool for servers
jacorb.poa.monitoring=off

# thread pool configuration for request processing
jacorb.poa.thread_pool_max=20
jacorb.poa.thread_pool_min=5

# if set, request processing threads in thePOA
# will run at this priority. If not set or invalid,
# MAX_PRIORITY will be used.
#jacorb.poa.thread_priority=

# size of the request queue, clients will receive Corba.TRANSIENT
# exceptions if load exceeds this limit
jacorb.poa.queue_max=100


##################################
#                                #
#   Name Service Configuration   #
#                                #
##################################

# Whether non active references are purged from name service
# when list operation is invoked.

jacorb.naming.purge=on

# Port on which to run service

# jacorb.naming.port=

########################################
#                                      #
#   Trader configuration, please see   #
#   src/trading/README.PROPERTIES for  #
#   explanation                        #
#                                      #
########################################

jtrader.util.max_threads=10
jtrader.util.min_threads=1
jtrader.util.query_timeout=5000
jtrader.impl.cache_max=100

# boolean values, e.g. true / false
#jtrader.modifiable_properties=
#jtrader.dynamic_properties=
#jtrader.proxy_offers=

jtrader.debug=false
jtrader.debug_verbosity=3

#integer values
jtrader.def_search_card=
jtrader.max_search_card=
jtrader.def_match_card=
jtrader.max_match_card=
jtrader.def_return_card=
jtrader.max_return_card=
jtrader.max_list=
jtrader.def_hop_count=
jtrader.max_hop_count=

#FollowOptions
#always=2
#if_no_local=1
#local_only=0
jtrader.def_follow_policy=
jtrader.max_follow_policy=
jtrader.max_link_follow_policy=

# any other custom properties can be added here.
# These are available through the API (call
# jacorb.orb.Environment.getProperty())
