]> git.mxchange.org Git - hub.git/blobdiff - application/hub/config.php
Hub project continued: (I have now a little more time)
[hub.git] / application / hub / config.php
index 92f467fd164df9b6827aad03dd149beae2e02eeb..ce94011bb2a0f33984cf90d00d3ea407986cba12 100644 (file)
@@ -4,7 +4,7 @@
  *
  * @author             Roland Haeder <webmaster@ship-simu.org>
  * @version            0.0
- * @copyright  Copyright (c) 2007 - 2008 Roland Haeder, 2009 - 2011 Hub Developer Team
+ * @copyright  Copyright (c) 2007 - 2008 Roland Haeder, 2009 - 2012 Hub Developer Team
  * @license            GNU GPL 3.0 or any newer version
  *
  * This program is free software: you can redistribute it and/or modify
@@ -22,7 +22,7 @@
  */
 
 // Some hub-specific configuration like port hostname where we will listen, etc.
-$cfg = FrameworkConfiguration::getInstance();
+$cfg = FrameworkConfiguration::getSelfInstance();
 
 // CFG: NODE-LISTEN-ADDR
 $cfg->setConfigEntry('node_listen_addr', '0.0.0.0');
@@ -51,8 +51,8 @@ $cfg->setConfigEntry('node_info_db_wrapper_class', 'NodeInformationDatabaseWrapp
 // CFG: NODE-LIST-DB-WRAPPER-CLASS
 $cfg->setConfigEntry('node_list_db_wrapper_class', 'NodeListDatabaseWrapper');
 
-// CFG: NODE-LOOKUP-DB-WRAPPER-CLASS
-$cfg->setConfigEntry('node_state_lookup_db_wrapper_class', 'NodeStateLookupDatabaseWrapper');
+// CFG: PEER-LOOKUP-DB-WRAPPER-CLASS
+$cfg->setConfigEntry('peer_state_lookup_db_wrapper_class', 'PeerStateLookupDatabaseWrapper');
 
 // CFG: WEB-CONTENT-TYPE
 $cfg->setConfigEntry('web_content_type', '');
@@ -114,6 +114,9 @@ $cfg->setConfigEntry('shutdown_task_visitor_class', 'ShutdownTaskVisitor');
 // CFG: SHUTDOWN-SOCKET-VISITOR-CLASS
 $cfg->setConfigEntry('shutdown_socket_visitor_class', 'ShutdownSocketVisitor');
 
+// CFG: HALF-SHUTDOWN-SOCKET-VISITOR-CLASS
+$cfg->setConfigEntry('half_shutdown_socket_visitor_class', 'HalfShutdownSocketVisitor');
+
 // CFG: ACTIVE-TASK-VISITOR-CLASS
 $cfg->setConfigEntry('active_task_visitor_class', 'ActiveTaskVisitor');
 
@@ -124,7 +127,7 @@ $cfg->setConfigEntry('node_raw_data_monitor_visitor_class', 'RawDataPoolMonitorV
 $cfg->setConfigEntry('list_group_class', 'ListGroupList');
 
 // CFG: HUB-ANNOUNCEMENT-HELPER-CLASS
-$cfg->setConfigEntry('hub_announcement_helper_class', 'HubDescriptorHelper');
+$cfg->setConfigEntry('hub_announcement_helper_class', 'HubAnnouncementHelper');
 
 // CFG: HUB-SELF-CONNECT-HELPER-CLASS
 $cfg->setConfigEntry('hub_self_connect_helper_class', 'HubSelfConnectHelper');
@@ -162,12 +165,15 @@ $cfg->setConfigEntry('node_activation_self_announcement_task_filter', 'NodeActiv
 // CFG: NODE-WELCOME-TEASER-FILTER
 $cfg->setConfigEntry('node_welcome_teaser_filter', 'NodeWelcomeTeaserFilter');
 
-// CFG: NODE-BOOTSTRAP-GENERATE-HUBID-FILTER
+// CFG: NODE-BOOTSTRAP-GENERATE-NODEID-FILTER
 $cfg->setConfigEntry('node_bootstrap_generate_nodeid_filter', 'NodeBootstrapGenerateNodeIdFilter');
 
 // CFG: NODE-BOOTSTRAP-GENERATE-SESSIONID-FILTER
 $cfg->setConfigEntry('node_bootstrap_generate_sessionid_filter', 'NodeBootstrapGenerateSessionIdFilter');
 
+// CFG: NODE-BOOTSTRAP-GENERATE-PRIVATE-KEY-FILTER
+$cfg->setConfigEntry('node_bootstrap_generate_private_key_filter', 'NodeBootstrapGeneratePrivateKeyFilter');
+
 // CFG: NODE-BOOTSTRAP-RESTORE-NODELIST-FILTER
 $cfg->setConfigEntry('node_bootstrap_restore_nodelist_filter', 'NodeBootstrapRestoreNodeListFilter');
 
@@ -192,14 +198,44 @@ $cfg->setConfigEntry('node_shutdown_task_handler_filter', 'NodeShutdownTaskHandl
 // CFG: NODE-SHUTDOWN-NODE-FILTER
 $cfg->setConfigEntry('node_shutdown_node_filter', 'NodeShutdownNodeFilter');
 
+// CFG: PACKAGE-FILTER-CHAIN-CLASS
+$cfg->setConfigEntry('package_filter_chain_class', 'PackageFilterChain');
+
+// CFG: PACKAGE-TAG-ANNOUNCEMENT-FILTER
+$cfg->setConfigEntry('package_tag_announcement_filter', 'PackageAnnouncementTagFilter');
+
+// CFG: PACKAGE-TAG-ANNOUNCEMENT-ANSWER-FILTER
+$cfg->setConfigEntry('package_tag_announcement_answer_filter', 'PackageAnnouncementAnswerTagFilter');
+
+// CFG: PACKAGE-TAG-SELF-CONNECT-FILTER
+$cfg->setConfigEntry('package_tag_self_connect_filter', 'PackageSelfConnectTagFilter');
+
+// CFG: MESSAGE-TYPE-ANNOUNCEMENT-HANDLER-CLASS
+$cfg->setConfigEntry('message_type_announcement_handler_class', 'NodeMessageAnnouncementHandler');
+
+// CFG: MESSAGE-TYPE-ANNOUNCEMENT-ANSWER-HANDLER-CLASS
+$cfg->setConfigEntry('message_type_announcement_answer_handler_class', 'NodeMessageAnnouncementAnswerHandler');
+
+// CFG: MESSAGE-TYPE-SELF-CONNECT-HANDLER-CLASS
+$cfg->setConfigEntry('message_type_self_connect_handler_class', 'NodeMessageSelfConnectHandler');
+
+// CFG: NODE-ANSWER-MESSAGE-ANNOUNCEMENT-HELPER-CLASS
+$cfg->setConfigEntry('node_answer_message_announcement_helper_class', 'NodeAnnouncementMessageAnswerHelper');
+
 // CFG: NEWS-READER-CLASS
 $cfg->setConfigEntry('news_reader_class', 'ConsoleNewsReader');
 
 // CFG: NODE-ANNOUNCEMENT-TEMPLATE-CLASS
 $cfg->setConfigEntry('node_announcement_template_class', 'XmlAnnouncementTemplateEngine');
 
-// CFG: NODE-ANNOUNCEMENT-TEMPLATE-EXTENSION
-$cfg->setConfigEntry('node_announcement_template_extension', '.xml');
+// CFG: NODE-ANNOUNCEMENT-ANSWER-TEMPLATE-CLASS
+$cfg->setConfigEntry('node_announcement_answer_template_class', 'XmlAnnouncementAnswerTemplateEngine');
+
+// CFG: NODE-MESSAGE-TEMPLATE-EXTENSION
+$cfg->setConfigEntry('node_message_template_extension', '.xml');
+
+// CFG: NODE-ANSWER-TEMPLATE-EXTENSION
+$cfg->setConfigEntry('node_answer_template_extension', '.xml');
 
 // CFG: NODE-ANNOUNCEMENT-TEMPLATE-TYPE
 $cfg->setConfigEntry('node_announcement_template_type', 'xml/announcement');
@@ -207,12 +243,15 @@ $cfg->setConfigEntry('node_announcement_template_type', 'xml/announcement');
 // CFG: NODE-ANNOUNCEMENT-STACKER-CLASS
 $cfg->setConfigEntry('node_announcement_stacker_class', 'FiLoStacker');
 
+// CFG: NODE-ANNOUNCEMENT-ANSWER-STACKER-CLASS
+$cfg->setConfigEntry('node_announcement_answer_stacker_class', 'FiLoStacker');
+
+// CFG: NODE-ANNOUNCEMENT-ANSWER-TEMPLATE-TYPE
+$cfg->setConfigEntry('node_announcement_answer_template_type', 'xml/answer/announcement');
+
 // CFG: NODE-SELF-CONNECT-TEMPLATE-CLASS
 $cfg->setConfigEntry('node_self_connect_template_class', 'XmlSelfConnectTemplateEngine');
 
-// CFG: NODE-SELF-CONNECT-TEMPLATE-EXTENSION
-$cfg->setConfigEntry('node_self_connect_template_extension', '.xml');
-
 // CFG: NODE-SELF-CONNECT-TEMPLATE-TYPE
 $cfg->setConfigEntry('node_self_connect_template_type', 'xml/self_connect');
 
@@ -243,6 +282,9 @@ $cfg->setConfigEntry('network_package_stacker_class', 'FiFoStacker');
 // CFG: NODE-RAW-DATA-STACKER-CLASS
 $cfg->setConfigEntry('node_raw_data_stacker_class', 'FiFoStacker');
 
+// CFG: CHUNK-HANDLER-STACKER-CLASS
+$cfg->setConfigEntry('chunk_handler_stacker_class', 'FiFoStacker');
+
 // CFG: PRODUCER-OUTGOING-QUEUE
 $cfg->setConfigEntry('producer_outgoing_queue', 'FiFoStacker');
 
@@ -252,17 +294,38 @@ $cfg->setConfigEntry('producer_incoming_queue', 'FiFoStacker');
 // CFG: STACKER-ANNOUNCEMENT-MAX-SIZE
 $cfg->setConfigEntry('stacker_announcement_max_size', 20);
 
+// CFG: STACKER-ANNOUNCEMENT-ANSWER-MAX-SIZE
+$cfg->setConfigEntry('stacker_announcement_answer_max_size', 20);
+
 // CFG: STACKER-SELF-CONNECT-MAX-SIZE
 $cfg->setConfigEntry('stacker_self_connect_max_size', 10);
 
 // CFG: STACKER-UNDECLARED-MAX-SIZE
-$cfg->setConfigEntry('stacker_undeclared_max_size', 10000);
+$cfg->setConfigEntry('stacker_package_undeclared_max_size', 10000);
+
+// CFG: STACKER-PACKAGE-DECLARED-MAX-SIZE
+$cfg->setConfigEntry('stacker_package_declared_max_size', 1000);
 
-// CFG: STACKER-DECLARED-MAX-SIZE
-$cfg->setConfigEntry('stacker_declared_max_size', 1000);
+// CFG: STACKER-PACKAGE-OUTGOING-MAX-SIZE
+$cfg->setConfigEntry('stacker_package_outgoing_max_size', 100);
 
-// CFG: STACKER-OUTGOING-MAX-SIZE
-$cfg->setConfigEntry('stacker_outgoing_max_size', 100);
+// CFG: STACKER-PACKAGE-DECODED-DATA-MAX-SIZE
+$cfg->setConfigEntry('stacker_package_decoded_data_max_size', 200);
+
+// CFG: STACKER-PACKAGE-HANDLED-DECODED-MAX-SIZE
+$cfg->setConfigEntry('stacker_package_handled_decoded_max_size', 200);
+
+// CFG: STACKER-PACKAGE-CHUNKED-DECODED-MAX-SIZE
+$cfg->setConfigEntry('stacker_package_chunked_decoded_max_size', 800);
+
+// CFG: STACKER-PACKAGE-NEW-MESSAGE-MAX-SIZE
+$cfg->setConfigEntry('stacker_package_new_message_max_size', 400);
+
+// CFG: STACKER-PACKAGE-PROCESSED-MESSAGE-MAX-SIZE
+$cfg->setConfigEntry('stacker_package_processed_message_max_size', 400);
+
+// CFG: STACKER-PACKAGE-BACKBUFFER-MAX-SIZE
+$cfg->setConfigEntry('stacker_package_backbuffer_max_size', 1000);
 
 // CFG: STACKER-IN-QUEUE-MAX-SIZE
 $cfg->setConfigEntry('stacker_in_queue_max_size', 10000);
@@ -279,8 +342,20 @@ $cfg->setConfigEntry('stacker_outgoing_queue_max_size', 100000);
 // CFG: STACKER-INCOMING-QUEUE-MAX-SIZE
 $cfg->setConfigEntry('stacker_incoming_queue_max_size', 100000);
 
-// CFG: STACKER-RAW-DATA-MAX-SIZE
-$cfg->setConfigEntry('stacker_raw_data_max_size', 100);
+// CFG: STACKER-DECODED-DATA-MAX-SIZE
+$cfg->setConfigEntry('stacker_decoded_data_max_size', 100);
+
+// CFG: STACKER-FINAL-CHUNKS-MAX-SIZE
+$cfg->setConfigEntry('stacker_final_chunks_max_size', 100);
+
+// CFG: STACKER-PENDING-CHUNKS-MAX-SIZE
+$cfg->setConfigEntry('stacker_pending_chunks_max_size', 500);
+
+// CFG: STACKER-CHUNK-RAW-DATA-MAX-SIZE
+$cfg->setConfigEntry('stacker_chunk_raw_data_max_size', 100);
+
+// CFG: STACKER-DECODED-PACKAGE-MAX-SIZE
+$cfg->setConfigEntry('stacker_decoded_package_max_size', 100);
 
 // CFG: NEWS-MAIN-LIMIT
 $cfg->setConfigEntry('news_main_limit', 5);
@@ -375,6 +450,12 @@ $cfg->setConfigEntry('hub_package_reader_task_class', 'NetworkPackageReaderTask'
 // CFG: HUB-SOCKET-LISTENER-TASK-CLASS
 $cfg->setConfigEntry('hub_socket_listener_task_class', 'HubSocketListenerTask');
 
+// CFG: HUB-CHUNK-ASSEMBLER-TASK-CLASS
+$cfg->setConfigEntry('hub_chunk_assembler_task_class', 'HubChunkAssemblerTask');
+
+// CFG: HUB-PACKAGE-DECODER-TASK-CLASS
+$cfg->setConfigEntry('hub_package_decoder_task_class', 'HubPackageDecoderTask');
+
 // CFG: TASK-NETWORK-PACKAGE-WRITER-STARTUP-DELAY
 $cfg->setConfigEntry('task_network_package_writer_startup_delay', 2500);
 
@@ -402,6 +483,24 @@ $cfg->setConfigEntry('task_socket_listener_interval_delay', 10);
 // CFG: TASK-SOCKET-LISTENER-MAX-RUNS
 $cfg->setConfigEntry('task_socket_listener_max_runs', 0);
 
+// CFG: TASK-CHUNK-ASSEMBLER-STATUP-DELAY
+$cfg->setConfigEntry('task_chunk_assembler_startup_delay', 1500);
+
+// CFG: TASK-PACKAGE-DECODER-STATUP-DELAY
+$cfg->setConfigEntry('task_package_decoder_startup_delay', 1300);
+
+// CFG: TASK-CHUNK-ASSEMBLER-INTERVAL-DELAY
+$cfg->setConfigEntry('task_chunk_assembler_interval_delay', 10);
+
+// CFG: TASK-PACKAGE-DECODER-INTERVAL-DELAY
+$cfg->setConfigEntry('task_package_decoder_interval_delay', 10);
+
+// CFG: TASK-CHUNK-ASSEMBLER-MAX-RUNS
+$cfg->setConfigEntry('task_chunk_assembler_max_runs', 0);
+
+// CFG: TASK-PACKAGE-DECODER-MAX-RUNS
+$cfg->setConfigEntry('task_package_decoder_max_runs', 0);
+
 // CFG: TASK-LIST-CLASS
 $cfg->setConfigEntry('task_list_class', 'TaskList');
 
@@ -420,12 +519,6 @@ $cfg->setConfigEntry('query_iterator_class', 'DefaultIterator');
 // CFG: HUB-PING-ITERATOR-CLASS
 $cfg->setConfigEntry('hub_ping_iterator_class', 'HubPingIterator');
 
-// CFG: TEST-UNIT-PRODUCER-KEY-ITERATOR-CLASS
-$cfg->setConfigEntry('test_unit_producer_key_iterator_class', 'TestUnitKeyProducerIterator');
-
-// CFG: WORK-UNIT-PRODUCER-KEY-ITERATOR-CLASS
-$cfg->setConfigEntry('work_unit_producer_key_iterator_class', 'WorkUnitKeyProducerIterator');
-
 // CFG: LOCAL-QUERY-LIST-CLASS
 $cfg->setConfigEntry('local_query_list_class', 'LocalQueryList');
 
@@ -447,6 +540,9 @@ $cfg->setConfigEntry('node_active_state_class', 'NodeActiveState');
 // CFG: NODE-ANNOUNCED-STATE-CLASS
 $cfg->setConfigEntry('node_announced_state_class', 'NodeAnnouncedState');
 
+// CFG: NODE-REACHABLE-STATE-CLASS
+$cfg->setConfigEntry('node_reachable_state_class', 'NodeReachableState');
+
 // CFG: NETWORK-PACKAGE-CLASS
 $cfg->setConfigEntry('network_package_class', 'NetworkPackage');
 
@@ -454,7 +550,7 @@ $cfg->setConfigEntry('network_package_class', 'NetworkPackage');
 $cfg->setConfigEntry('deco_package_compressor_class', 'NetworkPackageCompressorDecorator');
 
 // CFG: RAW-PACKAGE-COMPRESSOR-CLASS
-$cfg->setConfigEntry('raw_package_compressor_class', 'GzipCompressor');
+$cfg->setConfigEntry('raw_package_compressor_class', 'ZlibCompressor');
 
 // CFG: SOCKET-REGISTRY-CLASS
 $cfg->setConfigEntry('socket_registry_class', 'SocketRegistry');
@@ -474,11 +570,11 @@ $cfg->setConfigEntry('recipient_list_class', 'RecipientList');
 // CFG: PACKAGE-TAGS-CLASS
 $cfg->setConfigEntry('package_tags_class', 'PackageTags');
 
-// CFG: TCP-CONNECTION-CLASS
-$cfg->setConfigEntry('tcp_connection_class', 'TcpConnectionHelper');
+// CFG: TCP-CONNECTION-HELPER-CLASS
+$cfg->setConfigEntry('tcp_connection_helper_class', 'TcpConnectionHelper');
 
-// CFG: UDP-CONNECTION-CLASS
-$cfg->setConfigEntry('udp_connection_class', 'UdpConnectionHelper');
+// CFG: UDP-CONNECTION-HELPER-CLASS
+$cfg->setConfigEntry('udp_connection_helper_class', 'UdpConnectionHelper');
 
 // CFG: TCP-BUFFER-LENGTH
 $cfg->setConfigEntry('tcp_buffer_length', 1024);
@@ -487,26 +583,48 @@ $cfg->setConfigEntry('tcp_buffer_length', 1024);
 $cfg->setConfigEntry('udp_buffer_length', 1024);
 
 // CFG: TCP-CONNECT-RETRY-MAX
-$cfg->setConfigEntry('tcp_connect_retry_max', 10);
+$cfg->setConfigEntry('tcp_connect_retry_max', 5);
 
 // CFG: UDP-CONNECT-RETRY-MAX
-$cfg->setConfigEntry('udp_connect_retry_max', 10);
+$cfg->setConfigEntry('udp_connect_retry_max', 5);
 
-// CFG: NODE-STATE-LOOKUP-TABLE-CLASS
-$cfg->setConfigEntry('node_state_lookup_table_class', 'NodeStateLookupTable');
+// CFG: TCP-SOCKET-ACCEPT-WAIT-SEC
+// @TODO This and the next value is very static again
+$cfg->setConfigEntry('tcp_socket_accept_wait_sec', 3);
+
+// CFG: TCP-SOCKET-ACCEPT-WAIT-USEC
+$cfg->setConfigEntry('tcp_socket_accept_wait_usec', 0);
 
 // CFG: NODE-STATE-CHECKED-PACKAGE-CLASS
 $cfg->setConfigEntry('node_state_checked_package_class', 'NewConnectionNodeState');
 
+// CFG: NODE-ID
+$cfg->setConfigEntry('node_id', '');
+
 // CFG: SESSION-ID
 $cfg->setConfigEntry('session_id', '');
 
+// CFG: PRIVATE-KEY
+$cfg->setConfigEntry('private_key', '');
+
+// CFG: PRIVATE-KEY-HASH
+$cfg->setConfigEntry('private_key_hash', '');
+
+// CFG: INTERNAL-IP
+$cfg->setConfigEntry('internal_ip', ConsoleTools::acquireSelfIPAddress());
+
 // CFG: EXTERNAL-IP
 $cfg->setConfigEntry('external_ip', '');
 
+// CFG: NODE-STATUS
+$cfg->setConfigEntry('node_status', 'invalid');
+
 // CFG: PACKAGE-FRAGMENTER-CLASS
 $cfg->setConfigEntry('package_fragmenter_class', 'PackageFragmenter');
 
+// CFG: PACKAGE-ASSEMBLER-CLASS
+$cfg->setConfigEntry('package_assembler_class', 'PackageAssembler');
+
 // CFG: PACKAGE-CHUNK-SIZE
 $cfg->setConfigEntry('package_chunk_size', 256*8);
 
@@ -516,8 +634,55 @@ $cfg->setConfigEntry('node_raw_data_output_stream_class', 'RawDataOutputStream')
 // CFG: NODE-RAW-DATA-INPUT-STREAM-CLASS
 $cfg->setConfigEntry('node_raw_data_input_stream_class', 'RawDataInputStream');
 
+// CFG: DEBUG-OUTPUT-TIMINGS
+$cfg->setConfigEntry('debug_output_timings', 'Y');
+
+// CFG: SOCKET-TIMEOUT-SECONDS
+$cfg->setConfigEntry('socket_timeout_seconds', 3);
+
+// CFG: SOCKET-TIMEOUT-MICROSECONDS
+$cfg->setConfigEntry('socket_timeout_microseconds', 0);
+
+// CFG: CHUNK-HANDLER-CLASS
+$cfg->setConfigEntry('chunk_handler_class', 'ChunkHandler');
+
+// CFG: PACKAGE-DECODER-CLASS
+$cfg->setConfigEntry('package_decoder_class', 'PackageDecoder');
+
+// CFG: PACKAGE-RECIPIENT-MAX-COUNT
+// @TODO This is very static, rewrite it to more flexible
+$cfg->setConfigEntry('package_recipient_max_count', 3);
+
+///////////////////////////////////////////////////////////////////////////////
+//                              Peer states
+///////////////////////////////////////////////////////////////////////////////
+
+// CFG: PEER-INIT-STATE-CLASS
+$cfg->setConfigEntry('peer_init_state_class', 'InitPeerState');
+
+// CFG: PEER-CONNECTED-STATE-CLASS
+$cfg->setConfigEntry('peer_connected_state_class', 'ConnectedPeerState');
+
+// CFG: PEER-PROBLEM-STATE-CLASS
+$cfg->setConfigEntry('peer_problem_state_class', 'ProblemPeerState');
+
+// CFG: PEER-CONNECTION-REFUSED-STATE-CLASS
+$cfg->setConfigEntry('peer_connection_refused_state_class', 'ConnectionRefusedPeerState');
+
+// CFG: PEER-CONNECTION-TIMED-OUT-STATE-CLASS
+$cfg->setConfigEntry('peer_connection_timed_out_state_class', 'ConnectionTimedOutPeerState');
+
+// CFG: PEER-TRANSPORT-ENDPOINT-STATE-CLASS
+$cfg->setConfigEntry('peer_transport_endpoint_state_class', 'TransportEndpointGonePeerState');
+
+// CFG: PEER-OPERATION-ALREADY-PROGRESS-STATE-CLASS
+$cfg->setConfigEntry('peer_operation_already_progress_state_class', 'OperationAlreadyProgressPeerState');
+
+// CFG: PEER-NO-ROUTE-TO-HOST-STATE-CLASS
+$cfg->setConfigEntry('peer_no_route_to_host_state_class', 'NoRouteToHostPeerState');
+
 ///////////////////////////////////////////////////////////////////////////////
-//                        Cruncher Configuration
+//                        Cruncher configuration
 ///////////////////////////////////////////////////////////////////////////////
 
 // CFG: CRUNCHER-DEFAULT-MODE (can be only 'mcrypt' at the moment)
@@ -550,8 +715,8 @@ $cfg->setConfigEntry('cruncher_bootstrap_generic_activation_filter', 'CruncherBo
 // CFG: CRUNCHER-WELCOME-TEASER-FILTER
 $cfg->setConfigEntry('cruncher_welcome_teaser_filter', 'CruncherWelcomeTeaserFilter');
 
-// CFG: CRUNCHER-SHUTDOWN-CRUNCHER-FILTER
-$cfg->setConfigEntry('cruncher_shutdown_cruncher_filter', 'CruncherShutdownCruncherFilter');
+// CFG: CRUNCHER-SHUTDOWN-FILTER
+$cfg->setConfigEntry('cruncher_shutdown_filter', 'CruncherShutdownFilter');
 
 // CFG: CRUNCHER-WORK-UNIT-FETCHER-TASK-CLASS
 $cfg->setConfigEntry('cruncher_work_unit_fetcher_task_class', 'CruncherWorkUnitFetcherTask');
@@ -631,6 +796,12 @@ $cfg->setConfigEntry('cruncher_unit_db_wrapper_class', 'CruncherUnitDatabaseWrap
 // CFG: CRUNCHER-RANDOM-SECRET-MESSAGE-LENGTH
 $cfg->setConfigEntry('random_secret_message_length', 100);
 
+// CFG: TEST-UNIT-PRODUCER-KEY-ITERATOR-CLASS
+$cfg->setConfigEntry('test_unit_producer_key_iterator_class', 'TestUnitKeyProducerIterator');
+
+// CFG: WORK-UNIT-PRODUCER-KEY-ITERATOR-CLASS
+$cfg->setConfigEntry('work_unit_producer_key_iterator_class', 'WorkUnitKeyProducerIterator');
+
 // CFG: TEST-UNIT-RANDOM-SECRET-KEY-LENGTH
 $cfg->setConfigEntry('test_unit_random_secret_key_length', 8*4);
 
@@ -649,5 +820,61 @@ $cfg->setConfigEntry('cruncher_virgin_state_class', 'CruncherVirginState');
 // CFG: CRUNCHER-PER-UNIT-KEY-LIMIT
 $cfg->setConfigEntry('cruncher_per_unit_key_limit', 10000);
 
+///////////////////////////////////////////////////////////////////////////////
+//                            Chat Configuration
+///////////////////////////////////////////////////////////////////////////////
+
+// CFG: HUBCONSOLE-CMD-CHAT-RESOLVER-CLASS
+$cfg->setConfigEntry('hubconsole_cmd_chat_resolver_class', 'HubConsoleCommandResolver');
+
+// CFG: CHAT-PHP-REQUIREMENTS-FILTER
+$cfg->setConfigEntry('chat_php_requirements_filter', 'ChatPhpRequirementsFilter');
+
+// CFG: CHAT-INITIALIZER-FILTER
+$cfg->setConfigEntry('chat_initializer_filter', 'ChatInitializationFilter');
+
+// CFG: NODE-CONSOLE-CHAT
+$cfg->setConfigEntry('node_console_chat_class', 'NodeConsoleChat');
+
+// CFG: CHAT-WELCOME-TEASER-FILTER
+$cfg->setConfigEntry('chat_welcome_teaser_filter', 'ChatWelcomeTeaserFilter');
+
+// CFG: CHAT-BOOTSTRAP-TASK-HANDLER-INITIALIZER-FILTER
+$cfg->setConfigEntry('chat_bootstrap_task_handler_initializer_filter', 'ChatTaskHandlerInitializerFilter');
+
+// CFG: CHAT-BOOTSTRAP-EXTRA-BOOTSTRAPPING-FILTER
+$cfg->setConfigEntry('chat_bootstrap_extra_bootstrapping_filter', 'ChatBootstrapExtraBootstrappingFilter');
+
+// CFG: CHAT-BOOTSTRAP-GENERIC-ACTIVATION-FILTER
+$cfg->setConfigEntry('chat_bootstrap_generic_activation_filter', 'ChatBootstrapGenericActivationFilter');
+
+// CFG: CHAT-SHUTDOWN-FILTER
+$cfg->setConfigEntry('chat_shutdown_filter', 'ChatShutdownFilter');
+
+// CFG: CHAT-TELNET-LISTENER-TASK-CLASS
+$cfg->setConfigEntry('chat_telnet_listener_task_class', 'ChatTelnetListenerTask');
+
+// CFG: TASK-CHAT-TELNET-LISTENER-STARTUP-DELAY
+$cfg->setConfigEntry('task_chat_telnet_listener_startup_delay', 2500);
+
+// CFG: TASK-CHAT-TELNET-LISTENER-INTERVAL-DELAY
+$cfg->setConfigEntry('task_chat_telnet_listener_interval_delay', 10);
+
+// CFG: TASK-CHAT-TELNET-LISTENER-MAX-RUNS
+$cfg->setConfigEntry('task_chat_telnet_listener_max_runs', 0);
+
+///////////////////////////////////////////////////////////////////////////////
+//                            HTTP Configuration
+///////////////////////////////////////////////////////////////////////////////
+
+// CFG: DEFAULT-WEB-COMMAND
+$cfg->setConfigEntry('default_web_command', 'home');
+
+// CFG: WEB-CMD-HOME-RESOLVER-CLASS
+$cfg->setConfigEntry('web_cmd_home_resolver_class', 'WebCommandResolver');
+
+// CFG: NEWS-HOME-LIMIT
+$cfg->setConfigEntry('news_home_limit', 10);
+
 // [EOF]
 ?>