libs-gsweb/GSWeb.framework/GSWDefaultAdaptor.m

658 lines
21 KiB
Mathematica
Raw Normal View History

/* GSWDefaultAdaptor.m - GSWeb: Class GSWDefaultAdaptor
Copyright (C) 1999 Free Software Foundation, Inc.
Written by: Manuel Guesdon <mguesdon@sbuilders.com>
Date: Jan 1999
This file is part of the GNUstep Web Library.
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.
*/
static char rcsId[] = "$Id$";
#include <GSWeb/GSWeb.h>
//====================================================================
@implementation GSWDefaultAdaptor
-(id)initWithName:(NSString*)name_
arguments:(NSDictionary*)arguments_
{
2001-03-11 Manuel Guesdon <mguesdon@orange-concept.com> * GSWeb.framework/GSWWOCompatibility.h/.m: added * GSWeb.framework/GNUmakefile: added GSWWOCompatibility.h/.m * GSWeb.framework/GSWApplication.h/m: added WOApplicationMain, handle WO/GSWeb names * GSWeb.framework/GSWContext.m: handle WO/GSWeb names, added traces * GSWeb.framework/GSWConstants.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWDynamicURLString.m: handle WO/GSWeb names * GSWeb.framework/GSWProjectBundle.m/.h: handle WO/GSWeb names, suppress warnings * GSWeb.framework/GSWSession.m: handle WO/GSWeb names * GSWeb.framework/GSWRequest.m: handle WO/GSWeb names * GSWeb.framework/GSWTemplateParser.m: handle WO/GSWeb names, added tag counts to help errors hunt * GSWeb.framework/GSWBundle.m: handle WO/GSWeb names, added traces * GSWeb.framework/GSWResourceManager.m: handle WO/GSWeb names * GSWeb.framework/GSWURLValuedElementData.m: handle WO/GSWeb names * GSWeb.framework/GSWComponentRequestHandler.m: handle WO/GSWeb names * GSWeb.framework/GSWDirectAction.m: handle WO/GSWeb names * GSWeb.framework/GSWForm.m/.h: handle WO/GSWeb names * GSWeb.framework/GSWHyperlink.m/.h: handle WO/GSWeb names * GSWeb.framework/GSWResourceRequestHandler.m: handle WO/GSWeb names * GSWeb.framework/GSWDirectActionRequestHandler.m: handle WO/GSWeb names * GSWeb.framework/GSWActiveImage.m/.h: handle WO/GSWeb names * GSWeb.framework/GSWBindingNameAssociation.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWBrowser.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWComponent.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWHTMLURLValuedElement.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWImageButton.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWInput.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWPopUpButton.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWString.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWAssociation.m: handle WO/GSWeb names * GSWeb.framework/GSWCheckBox.m: handle WO/GSWeb names * GSWeb.framework/GSWCheckBoxList.m: handle WO/GSWeb names * GSWeb.framework/GSWComponentDefinition.m: handle WO/GSWeb names * GSWeb.framework/GSWRadioButton.m: handle WO/GSWeb names * GSWeb.framework/GSWRadioButtonList.m: handle WO/GSWeb names * GSWeb.framework/GSWText.m: handle WO/GSWeb names * GSWeb.framework/GSWTextField.m: handle WO/GSWeb names * GSWeb.framework/GSWDeployedBundle.m: warnings * GSWeb.framework/GSWeb.h: added include GSWeb/GSWSessionTimeOut.h, GSWWOCompatibility.h * GSWeb.framework/GSWAdaptor.m: traces * GSWeb.framework/GSWDefaultAdaptor.m: handle WO/GSWeb names, added traces * GSWeb.framework/GSWDefaultAdaptorThread.m/.h: handle WO/GSWeb names * GSWeb.framework/NSNonBlockingFileHandle.m: added traces * GSWeb.framework/GSWTemplateParserANTLR.m: handle WO/GSWeb names * GSWeb.framework/GSWTemplateParserXML.m: handle WO/GSWeb names added tag count to help errors hunt remove "Tag gsweb invalid" message handle unicode strings in node content traces remove html and body tags if they are not present in the template * GSWeb.framework/GSWTemplateParseXML.h: added ivar _isHTMLTag, _isBodyTag * GSWeb.framework/GSWSessionTimeOutManager.m: dealloc sessionOrderedTimeOuts instead of deallocating 2 times sessionTimeOuts * GSWExtensions.framework/French.lproj/GSWSessionRestorationErrorPage.gswc/GSWSessionRestorationErrorPage.html: tag mismatch, Encode french characters * GSWExtensions.framework/GSWSessionRestorationErrorPage.gswc/GSWSessionRestorationErrorPage.html: tag mismatch * GSWHTMLBareString.m: handle unicode strings in description * GSWExtensions.framework/French.lproj/GSWExceptionPage.gswc/GSWExceptionPage.html: Encode french characters, Tag Mismatch * GSWExtensions.framework/French.lproj/GSWPageRestorationErrorPage.gswc/GSWPageRestorationErrorPage.html: Encode french characters * GSWExtensions.framework/French.lproj/GSWSessionCreationErrorPage.gswc/GSWSessionCreationErrorPage.html: Encode french characters * GSWExtensions.framework/GSWExceptionPage.gswc/GSWExceptionPage.html: Tag Mismatch * GSWExtensions.framework/GSWExceptionPage.gswc/GSWExceptionPage.gswd: added convertHTMLEntities for strings * GSWeb.framework/GSWRepetition.m: added traces, fix "count" property bug, standardize ivars * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added traces, handle underscored ivars search git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@9332 72102866-910b-0410-8b05-ffd578937521
2001-03-11 17:15:44 +00:00
NSDebugMLog(@"Init");
if ((self=[super initWithName:name_
2001-03-11 Manuel Guesdon <mguesdon@orange-concept.com> * GSWeb.framework/GSWWOCompatibility.h/.m: added * GSWeb.framework/GNUmakefile: added GSWWOCompatibility.h/.m * GSWeb.framework/GSWApplication.h/m: added WOApplicationMain, handle WO/GSWeb names * GSWeb.framework/GSWContext.m: handle WO/GSWeb names, added traces * GSWeb.framework/GSWConstants.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWDynamicURLString.m: handle WO/GSWeb names * GSWeb.framework/GSWProjectBundle.m/.h: handle WO/GSWeb names, suppress warnings * GSWeb.framework/GSWSession.m: handle WO/GSWeb names * GSWeb.framework/GSWRequest.m: handle WO/GSWeb names * GSWeb.framework/GSWTemplateParser.m: handle WO/GSWeb names, added tag counts to help errors hunt * GSWeb.framework/GSWBundle.m: handle WO/GSWeb names, added traces * GSWeb.framework/GSWResourceManager.m: handle WO/GSWeb names * GSWeb.framework/GSWURLValuedElementData.m: handle WO/GSWeb names * GSWeb.framework/GSWComponentRequestHandler.m: handle WO/GSWeb names * GSWeb.framework/GSWDirectAction.m: handle WO/GSWeb names * GSWeb.framework/GSWForm.m/.h: handle WO/GSWeb names * GSWeb.framework/GSWHyperlink.m/.h: handle WO/GSWeb names * GSWeb.framework/GSWResourceRequestHandler.m: handle WO/GSWeb names * GSWeb.framework/GSWDirectActionRequestHandler.m: handle WO/GSWeb names * GSWeb.framework/GSWActiveImage.m/.h: handle WO/GSWeb names * GSWeb.framework/GSWBindingNameAssociation.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWBrowser.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWComponent.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWHTMLURLValuedElement.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWImageButton.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWInput.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWPopUpButton.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWString.h/.m: handle WO/GSWeb names * GSWeb.framework/GSWAssociation.m: handle WO/GSWeb names * GSWeb.framework/GSWCheckBox.m: handle WO/GSWeb names * GSWeb.framework/GSWCheckBoxList.m: handle WO/GSWeb names * GSWeb.framework/GSWComponentDefinition.m: handle WO/GSWeb names * GSWeb.framework/GSWRadioButton.m: handle WO/GSWeb names * GSWeb.framework/GSWRadioButtonList.m: handle WO/GSWeb names * GSWeb.framework/GSWText.m: handle WO/GSWeb names * GSWeb.framework/GSWTextField.m: handle WO/GSWeb names * GSWeb.framework/GSWDeployedBundle.m: warnings * GSWeb.framework/GSWeb.h: added include GSWeb/GSWSessionTimeOut.h, GSWWOCompatibility.h * GSWeb.framework/GSWAdaptor.m: traces * GSWeb.framework/GSWDefaultAdaptor.m: handle WO/GSWeb names, added traces * GSWeb.framework/GSWDefaultAdaptorThread.m/.h: handle WO/GSWeb names * GSWeb.framework/NSNonBlockingFileHandle.m: added traces * GSWeb.framework/GSWTemplateParserANTLR.m: handle WO/GSWeb names * GSWeb.framework/GSWTemplateParserXML.m: handle WO/GSWeb names added tag count to help errors hunt remove "Tag gsweb invalid" message handle unicode strings in node content traces remove html and body tags if they are not present in the template * GSWeb.framework/GSWTemplateParseXML.h: added ivar _isHTMLTag, _isBodyTag * GSWeb.framework/GSWSessionTimeOutManager.m: dealloc sessionOrderedTimeOuts instead of deallocating 2 times sessionTimeOuts * GSWExtensions.framework/French.lproj/GSWSessionRestorationErrorPage.gswc/GSWSessionRestorationErrorPage.html: tag mismatch, Encode french characters * GSWExtensions.framework/GSWSessionRestorationErrorPage.gswc/GSWSessionRestorationErrorPage.html: tag mismatch * GSWHTMLBareString.m: handle unicode strings in description * GSWExtensions.framework/French.lproj/GSWExceptionPage.gswc/GSWExceptionPage.html: Encode french characters, Tag Mismatch * GSWExtensions.framework/French.lproj/GSWPageRestorationErrorPage.gswc/GSWPageRestorationErrorPage.html: Encode french characters * GSWExtensions.framework/French.lproj/GSWSessionCreationErrorPage.gswc/GSWSessionCreationErrorPage.html: Encode french characters * GSWExtensions.framework/GSWExceptionPage.gswc/GSWExceptionPage.html: Tag Mismatch * GSWExtensions.framework/GSWExceptionPage.gswc/GSWExceptionPage.gswd: added convertHTMLEntities for strings * GSWeb.framework/GSWRepetition.m: added traces, fix "count" property bug, standardize ivars * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added traces, handle underscored ivars search git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@9332 72102866-910b-0410-8b05-ffd578937521
2001-03-11 17:15:44 +00:00
arguments:arguments_]))
{
fileHandle=nil;
threads=[NSMutableArray new];
waitingThreads=[NSMutableArray new];
selfLock=[NSLock new];
port=[[arguments_ objectForKey:GSWOPT_Port[GSWebNamingConv]] intValue];
NSDebugMLLog(@"info",@"port=%d",port);
ASSIGN(host,[arguments_ objectForKey:GSWOPT_Host[GSWebNamingConv]]);
// [self setInstance:_instance];
queueSize=[[arguments_ objectForKey:GSWOPT_ListenQueueSize[GSWebNamingConv]] intValue];
workerThreadCount=[[arguments_ objectForKey:GSWOPT_WorkerThreadCount[GSWebNamingConv]] intValue];
isMultiThreadEnabled=[[arguments_ objectForKey:GSWOPT_MultiThreadEnabled] boolValue];
};
LOGObjectFnStop();
return self;
};
//--------------------------------------------------------------------
-(void)dealloc
{
GSWLogC("Dealloc GSWDefaultAdaptor");
//TODO? DESTROY(listenPortObject);
GSWLogC("Dealloc GSWDefaultAdaptor: host");
DESTROY(host);
GSWLogC("Dealloc GSWDefaultAdaptor: fileHandle");
DESTROY(fileHandle);
GSWLogC("Dealloc GSWDefaultAdaptor: threads");
DESTROY(threads);
GSWLogC("Dealloc GSWDefaultAdaptor: waitingThreads");
DESTROY(waitingThreads);
GSWLogC("Dealloc GSWDefaultAdaptor: selfLock");
DESTROY(selfLock);
GSWLogC("Dealloc GSWDefaultAdaptor Super");
[super dealloc];
GSWLogC("End Dealloc GSWDefaultAdaptor");
};
//--------------------------------------------------------------------
-(void)registerForEvents
{
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
NSDebugMLog(@"START registerForEvents - ThreadID=%p",(void*)objc_thread_id());
NSAssert(!fileHandle,@"fileHandle already exists");
NSDebugMLLog(@"info",@"registerForEvents port=%d",port);
NSDebugMLLog(@"info",@"registerForEvents host=%@",host);
if (!host)
{
ASSIGN(host,[[NSHost currentHost] name]);
};
fileHandle=[[NSFileHandle fileHandleAsServerAtAddress:host
service:[NSString stringWithFormat:@"%d",port]
protocol:@"tcp"] retain];
NSDebugMLLog(@"info",@"fileHandle=%p\n",(void*)fileHandle);
[[NSNotificationCenter defaultCenter] addObserver:self
selector: @selector(announceNewConnection:)
name: NSFileHandleConnectionAcceptedNotification
object:fileHandle];
/* [NotificationDispatcher addObserver:self
selector: @selector(announceNewConnection:)
name: NSFileHandleConnectionAcceptedNotification
object:fileHandle];
*/
[fileHandle acceptConnectionInBackgroundAndNotify];
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
NSDebugMLog(@"ThreadID=%p - B readInProgress=%d",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
printf("ThreadID=%p - B readInProgress=%d\n",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
[GSWApplication statusLogWithFormat:@"ThreadID %p: Waiting for connections.",(void*)objc_thread_id()];
NSDebugMLog(@"STOP registerForEvents");
};
//--------------------------------------------------------------------
-(void)unregisterForEvents
{
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
printf("ThreadID=%p - unregisterForEvents\n",(void*)objc_thread_id());
[[NSNotificationCenter defaultCenter] removeObserver:self
name: NSFileHandleConnectionAcceptedNotification
object:fileHandle];
/* [NotificationDispatcher removeObserver:self
name: NSFileHandleConnectionAcceptedNotification
object:fileHandle];
*/
DESTROY(fileHandle);
};
//--------------------------------------------------------------------
-(void)logWithFormat:(NSString*)_format,...
{
LOGObjectFnNotImplemented(); //TODOFN
};
//--------------------------------------------------------------------
+(void)logWithFormat:(NSString*)_format,...
{
LOGClassFnNotImplemented(); //TODOFN
};
//--------------------------------------------------------------------
-(void)runOnce
{
//call doesBusyRunOnce
LOGObjectFnNotImplemented(); //TODOFN
};
//--------------------------------------------------------------------
-(BOOL)doesBusyRunOnce
{
//call _runOnce
LOGObjectFnNotImplemented(); //TODOFN
return NO;
};
//--------------------------------------------------------------------
-(BOOL)dispatchesRequestsConcurrently
{
return YES;
};
//--------------------------------------------------------------------
-(int)port
{
return port;
};
//--------------------------------------------------------------------
-(NSString*)host
{
return host;
};
//--------------------------------------------------------------------
-(void)setWorkerThreadCount:(id)workerThreadCount_
{
if ([self tryLock])
{
NS_DURING
{
workerThreadCount=[workerThreadCount_ intValue];
if (workerThreadCount<1)
workerThreadCount=1;
}
NS_HANDLER
{
LOGException(@"%@ (%@)",
localException,
[localException reason]);
}
NS_ENDHANDLER;
[self unlock];
}
else
{
//TODO
};
};
//--------------------------------------------------------------------
-(id)workerThreadCount
{
return [NSNumber numberWithInt:workerThreadCount];
};
//--------------------------------------------------------------------
-(BOOL)isMultiThreadEnabled
{
return isMultiThreadEnabled;
};
//--------------------------------------------------------------------
-(void)setListenQueueSize:(id)listenQueueSize_
{
if ([self tryLock])
{
NS_DURING
{
queueSize=[listenQueueSize_ intValue];
if (queueSize<1)
queueSize=1;
}
NS_HANDLER
{
LOGException(@"%@ (%@)",
localException,
[localException reason]);
}
NS_ENDHANDLER;
[self unlock];
}
else
{
//TODO
};
};
//--------------------------------------------------------------------
//NDFN
-(id)announceNewConnection:(id)notification
{
GSWDefaultAdaptorThread* _newThread=nil;
NSFileHandle* _listenHandle=nil;
NSFileHandle* inStream = nil;
NSCalendarDate* requestDate=nil;
NSString* requestDateString=nil;
LOGObjectFnStart();
_listenHandle=[notification object];
requestDate=[NSCalendarDate calendarDate];
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
requestDateString=[NSString stringWithFormat:@"ThreadID=%p: New Request %@",(void*)objc_thread_id(),requestDate];
2000-03-20 Manuel Guesdon <mguesdon@sbuilders.com> * GSWDebug.h: remove unused functions * GSWApplication.h/.m:Added: GSWDebuggingStatus category +isStatusDebuggingEnabled +setStatusDebuggingEnabled: +debugSetConfigFilePath +setDebugSetConfigFilePath: * GSWApplication.h/.m: replaced GSWDebugStdLog by [GSWApp statusDebug...] replaced executeWithClasses: with executeWithClassArray: corrections for different warnings change in GSWApplicationDebugSetChange() to use GSWDebugSetConfigFi lePath option * GSWConfig.h: added GSWOPTVALUE_StatusDebuggingEnabled * GSWConstants.h/.m: added GSWOPT_StatusDebuggingEnabled added GSWOPT_DebugSetConfigFilePath * INSTALL: reflect changes of adaptors,... * GSWUtil.h/.m: corrections for different warnings removed MD5HexDigest() * GSWCheckBoxListm: replaced LOGAssertGood by GSWLogAssertGood * GSWRadioButtonList.m: replaced LOGAssertGood by GSWLogAssertGood * GSWDefaultAdaptorThread.m: replaced GSWLogCStdOut by +statusLogWithFormat : corrections for different warnings * GSWDefaultAdaptor.m: replaced GSWLogCStdOut by +statusLogWithFormat: * GSWSessionTimeOutManager.m: replaced GSWLogCStdOut by +statusLogWithForma t: * GSWKeyValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLStaticElement.m: corrections for different warnings * GSWConstantValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLDynamicElement.m: corrections for different warnings * GSWStatsPage.m: corrections for different warnings * GSWExceptionPage.m: removed GSWLogCStdOut calls * GSWSession.m: replaced GSWLogCStdOut by +statusLogWithFormat: replaced LOGAssertGood by GSWLogAssertGood * GSWAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWComponent.m: replaced LOGAssertGood by GSWLogAssertGood * GSWContext.m: replaced LOGAssertGood by GSWLogAssertGood * GSWRequest.m: replaced LOGAssertGood by GSWLogAssertGood * GSWResponse.m: replaced LOGAssertGood by GSWLogAssertGood * GSWSessionStore.m: replaced LOGAssertGood by GSWLogAssertGood * Adator GSWAppRequest.c: test on instance in GSWAppRequest_SendAppRequestT oApp * Adator GSWLoadBalancing.c: added debug messages * Adaptor GSWHTTPRequest.c: corrected bug in GSWHTTPRequest_SendRequest * Adaptor: GSWAppConnectSocket.c: added debug messages * GSWeb.framework/Makefile.preamble: removed -lNGReflection git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@6345 72102866-910b-0410-8b05-ffd578937521
2000-03-20 15:50:51 +00:00
[GSWApplication statusLogWithFormat:@"%@",requestDateString];
NSDebugMLLog(@"info",@"_listenHandle=%p",(void*)_listenHandle);
inStream = [[notification userInfo]objectForKey:@"NSFileHandleNotificationFileHandleItem"];
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
printf("ThreadID=%p announceNewConnection notification=%@ socketAddress=%@ [notification userInfo]=%p\n",
(void*)objc_thread_id(),
notification,
[inStream socketAddress],
[notification userInfo]);
NSDebugMLLog(@"info",@"notification userInfo=%@\n",
[notification userInfo]);
NSDebugMLog(@"ThreadID=%p - A1 readInProgress=%d",
(void*)objc_thread_id(),
(int)[fileHandle readInProgress]);
printf("ThreadID=%p - A1 readInProgress=%d\n",
(void*)objc_thread_id(),
(int)[fileHandle readInProgress]);
printf("NEW CONN APP selfLockn=%d selfLock_thread_id=%p globalLockn=%d globalLock_thread_id=%p threads count=%d waitingThreads count=%d blocked=%d\n",
(int)([GSWApplication application]->selfLockn),
(void*)([GSWApplication application]->selfLock_thread_id),
(int)([GSWApplication application]->globalLockn),
(void*)([GSWApplication application]->globalLock_thread_id),
[threads count],
[waitingThreads count],
blocked);
printf("[waitingThreads count]=%d queueSize=%d",[waitingThreads count],queueSize);
if ([waitingThreads count]>=queueSize)
{
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
//remove expired thread
if ([self tryLock])
{
NSDebugMLog0(@"locked !");
NS_DURING
{
int i=0;
GSWDefaultAdaptorThread* thread=nil;
for(i=0;i<[waitingThreads count];)
{
thread=[waitingThreads objectAtIndex:i];
if ([thread isExpired])
{
// [GSWDefaultAdaptorThread sendRetryLasterResponseToStream:[thread stream]];
[waitingThreads removeObjectAtIndex:i];
}
else
i++;
};
}
NS_HANDLER
{
LOGException(@"%@ (%@)",
localException,[localException reason]);
//TODO
[self unlock];
[localException raise];
}
NS_ENDHANDLER;
[self unlock];
};
};
if ([waitingThreads count]>=queueSize)
{
printf("DESTROY the connection: too many conn - ThreadID=%p - A1 readInProgress=%d\n",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
[GSWDefaultAdaptorThread sendRetryLasterResponseToStream:inStream];
//[inStream closeFile];
}
else
{
//release done after lock !
_newThread=[[GSWDefaultAdaptorThread alloc] initWithApp:[GSWApplication application]
withAdaptor:self
withStream:inStream];
if (_newThread)
{
NSDebugMLog0(@"_newThread !");
if ([self tryLock])
{
NSDebugMLog0(@"locked !");
NS_DURING
{
NSDebugMLLog(@"low",
@"[waitingThreads count]=%d [threads count]=%d",
[waitingThreads count],
[threads count]);
if ([threads count]<workerThreadCount)
{
[threads addObject:_newThread];
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
NSDebugMLLog(@"trace",@"isMultiThreadEnabled=%d",isMultiThreadEnabled);
if (isMultiThreadEnabled)
{
requestDate=[NSCalendarDate calendarDate];
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
requestDateString=[NSString stringWithFormat:@"ThreadID=%p : Lauch Thread (Multi) %@",
(void*)objc_thread_id(),
requestDate];
2000-03-20 Manuel Guesdon <mguesdon@sbuilders.com> * GSWDebug.h: remove unused functions * GSWApplication.h/.m:Added: GSWDebuggingStatus category +isStatusDebuggingEnabled +setStatusDebuggingEnabled: +debugSetConfigFilePath +setDebugSetConfigFilePath: * GSWApplication.h/.m: replaced GSWDebugStdLog by [GSWApp statusDebug...] replaced executeWithClasses: with executeWithClassArray: corrections for different warnings change in GSWApplicationDebugSetChange() to use GSWDebugSetConfigFi lePath option * GSWConfig.h: added GSWOPTVALUE_StatusDebuggingEnabled * GSWConstants.h/.m: added GSWOPT_StatusDebuggingEnabled added GSWOPT_DebugSetConfigFilePath * INSTALL: reflect changes of adaptors,... * GSWUtil.h/.m: corrections for different warnings removed MD5HexDigest() * GSWCheckBoxListm: replaced LOGAssertGood by GSWLogAssertGood * GSWRadioButtonList.m: replaced LOGAssertGood by GSWLogAssertGood * GSWDefaultAdaptorThread.m: replaced GSWLogCStdOut by +statusLogWithFormat : corrections for different warnings * GSWDefaultAdaptor.m: replaced GSWLogCStdOut by +statusLogWithFormat: * GSWSessionTimeOutManager.m: replaced GSWLogCStdOut by +statusLogWithForma t: * GSWKeyValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLStaticElement.m: corrections for different warnings * GSWConstantValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLDynamicElement.m: corrections for different warnings * GSWStatsPage.m: corrections for different warnings * GSWExceptionPage.m: removed GSWLogCStdOut calls * GSWSession.m: replaced GSWLogCStdOut by +statusLogWithFormat: replaced LOGAssertGood by GSWLogAssertGood * GSWAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWComponent.m: replaced LOGAssertGood by GSWLogAssertGood * GSWContext.m: replaced LOGAssertGood by GSWLogAssertGood * GSWRequest.m: replaced LOGAssertGood by GSWLogAssertGood * GSWResponse.m: replaced LOGAssertGood by GSWLogAssertGood * GSWSessionStore.m: replaced LOGAssertGood by GSWLogAssertGood * Adator GSWAppRequest.c: test on instance in GSWAppRequest_SendAppRequestT oApp * Adator GSWLoadBalancing.c: added debug messages * Adaptor GSWHTTPRequest.c: corrected bug in GSWHTTPRequest_SendRequest * Adaptor: GSWAppConnectSocket.c: added debug messages * GSWeb.framework/Makefile.preamble: removed -lNGReflection git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@6345 72102866-910b-0410-8b05-ffd578937521
2000-03-20 15:50:51 +00:00
[GSWApplication statusLogWithFormat:@"%@",requestDateString];
NSDebugMLLog(@"info",
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
@"ThreadID=%p : Lauch Thread (Multi) %p",
(void*)objc_thread_id(),
(void*)_newThread);
[NSThread detachNewThreadSelector:@selector(run:)
toTarget:_newThread
withObject:nil];
DESTROY(_newThread);
}
else
{
//Runit after
/*
2000-03-20 Manuel Guesdon <mguesdon@sbuilders.com> * GSWDebug.h: remove unused functions * GSWApplication.h/.m:Added: GSWDebuggingStatus category +isStatusDebuggingEnabled +setStatusDebuggingEnabled: +debugSetConfigFilePath +setDebugSetConfigFilePath: * GSWApplication.h/.m: replaced GSWDebugStdLog by [GSWApp statusDebug...] replaced executeWithClasses: with executeWithClassArray: corrections for different warnings change in GSWApplicationDebugSetChange() to use GSWDebugSetConfigFi lePath option * GSWConfig.h: added GSWOPTVALUE_StatusDebuggingEnabled * GSWConstants.h/.m: added GSWOPT_StatusDebuggingEnabled added GSWOPT_DebugSetConfigFilePath * INSTALL: reflect changes of adaptors,... * GSWUtil.h/.m: corrections for different warnings removed MD5HexDigest() * GSWCheckBoxListm: replaced LOGAssertGood by GSWLogAssertGood * GSWRadioButtonList.m: replaced LOGAssertGood by GSWLogAssertGood * GSWDefaultAdaptorThread.m: replaced GSWLogCStdOut by +statusLogWithFormat : corrections for different warnings * GSWDefaultAdaptor.m: replaced GSWLogCStdOut by +statusLogWithFormat: * GSWSessionTimeOutManager.m: replaced GSWLogCStdOut by +statusLogWithForma t: * GSWKeyValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLStaticElement.m: corrections for different warnings * GSWConstantValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLDynamicElement.m: corrections for different warnings * GSWStatsPage.m: corrections for different warnings * GSWExceptionPage.m: removed GSWLogCStdOut calls * GSWSession.m: replaced GSWLogCStdOut by +statusLogWithFormat: replaced LOGAssertGood by GSWLogAssertGood * GSWAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWComponent.m: replaced LOGAssertGood by GSWLogAssertGood * GSWContext.m: replaced LOGAssertGood by GSWLogAssertGood * GSWRequest.m: replaced LOGAssertGood by GSWLogAssertGood * GSWResponse.m: replaced LOGAssertGood by GSWLogAssertGood * GSWSessionStore.m: replaced LOGAssertGood by GSWLogAssertGood * Adator GSWAppRequest.c: test on instance in GSWAppRequest_SendAppRequestT oApp * Adator GSWLoadBalancing.c: added debug messages * Adaptor GSWHTTPRequest.c: corrected bug in GSWHTTPRequest_SendRequest * Adaptor: GSWAppConnectSocket.c: added debug messages * GSWeb.framework/Makefile.preamble: removed -lNGReflection git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@6345 72102866-910b-0410-8b05-ffd578937521
2000-03-20 15:50:51 +00:00
[GSWApplication statusLogWithFormat:@"Lauch Thread (Mono)"];
NSDebugMLLog(@"info",
@"Lauch Thread (Mono) %p",
(void*)_newThread);
[_newThread run:nil];
*/
};
}
else
{
2000-03-20 Manuel Guesdon <mguesdon@sbuilders.com> * GSWDebug.h: remove unused functions * GSWApplication.h/.m:Added: GSWDebuggingStatus category +isStatusDebuggingEnabled +setStatusDebuggingEnabled: +debugSetConfigFilePath +setDebugSetConfigFilePath: * GSWApplication.h/.m: replaced GSWDebugStdLog by [GSWApp statusDebug...] replaced executeWithClasses: with executeWithClassArray: corrections for different warnings change in GSWApplicationDebugSetChange() to use GSWDebugSetConfigFi lePath option * GSWConfig.h: added GSWOPTVALUE_StatusDebuggingEnabled * GSWConstants.h/.m: added GSWOPT_StatusDebuggingEnabled added GSWOPT_DebugSetConfigFilePath * INSTALL: reflect changes of adaptors,... * GSWUtil.h/.m: corrections for different warnings removed MD5HexDigest() * GSWCheckBoxListm: replaced LOGAssertGood by GSWLogAssertGood * GSWRadioButtonList.m: replaced LOGAssertGood by GSWLogAssertGood * GSWDefaultAdaptorThread.m: replaced GSWLogCStdOut by +statusLogWithFormat : corrections for different warnings * GSWDefaultAdaptor.m: replaced GSWLogCStdOut by +statusLogWithFormat: * GSWSessionTimeOutManager.m: replaced GSWLogCStdOut by +statusLogWithForma t: * GSWKeyValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLStaticElement.m: corrections for different warnings * GSWConstantValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLDynamicElement.m: corrections for different warnings * GSWStatsPage.m: corrections for different warnings * GSWExceptionPage.m: removed GSWLogCStdOut calls * GSWSession.m: replaced GSWLogCStdOut by +statusLogWithFormat: replaced LOGAssertGood by GSWLogAssertGood * GSWAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWComponent.m: replaced LOGAssertGood by GSWLogAssertGood * GSWContext.m: replaced LOGAssertGood by GSWLogAssertGood * GSWRequest.m: replaced LOGAssertGood by GSWLogAssertGood * GSWResponse.m: replaced LOGAssertGood by GSWLogAssertGood * GSWSessionStore.m: replaced LOGAssertGood by GSWLogAssertGood * Adator GSWAppRequest.c: test on instance in GSWAppRequest_SendAppRequestT oApp * Adator GSWLoadBalancing.c: added debug messages * Adaptor GSWHTTPRequest.c: corrected bug in GSWHTTPRequest_SendRequest * Adaptor: GSWAppConnectSocket.c: added debug messages * GSWeb.framework/Makefile.preamble: removed -lNGReflection git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@6345 72102866-910b-0410-8b05-ffd578937521
2000-03-20 15:50:51 +00:00
[GSWApplication statusLogWithFormat:@"Set Thread to wait"];
NSDebugMLLog(@"info",
@"Set Thread to wait %p",
(void*)_newThread);
[waitingThreads addObject:_newThread];
DESTROY(_newThread);
};
}
NS_HANDLER
{
LOGException(@"%@ (%@)",
localException,[localException reason]);
//TODO
[self unlock];
[localException raise];
}
NS_ENDHANDLER;
[self unlock];
}
else
{
DESTROY(_newThread);
};
};
if (!isMultiThreadEnabled && _newThread)
{
requestDate=[NSCalendarDate calendarDate];
requestDateString=[NSString stringWithFormat:@"Lauch Thread (Mono) %@",requestDate];
2000-03-20 Manuel Guesdon <mguesdon@sbuilders.com> * GSWDebug.h: remove unused functions * GSWApplication.h/.m:Added: GSWDebuggingStatus category +isStatusDebuggingEnabled +setStatusDebuggingEnabled: +debugSetConfigFilePath +setDebugSetConfigFilePath: * GSWApplication.h/.m: replaced GSWDebugStdLog by [GSWApp statusDebug...] replaced executeWithClasses: with executeWithClassArray: corrections for different warnings change in GSWApplicationDebugSetChange() to use GSWDebugSetConfigFi lePath option * GSWConfig.h: added GSWOPTVALUE_StatusDebuggingEnabled * GSWConstants.h/.m: added GSWOPT_StatusDebuggingEnabled added GSWOPT_DebugSetConfigFilePath * INSTALL: reflect changes of adaptors,... * GSWUtil.h/.m: corrections for different warnings removed MD5HexDigest() * GSWCheckBoxListm: replaced LOGAssertGood by GSWLogAssertGood * GSWRadioButtonList.m: replaced LOGAssertGood by GSWLogAssertGood * GSWDefaultAdaptorThread.m: replaced GSWLogCStdOut by +statusLogWithFormat : corrections for different warnings * GSWDefaultAdaptor.m: replaced GSWLogCStdOut by +statusLogWithFormat: * GSWSessionTimeOutManager.m: replaced GSWLogCStdOut by +statusLogWithForma t: * GSWKeyValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLStaticElement.m: corrections for different warnings * GSWConstantValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLDynamicElement.m: corrections for different warnings * GSWStatsPage.m: corrections for different warnings * GSWExceptionPage.m: removed GSWLogCStdOut calls * GSWSession.m: replaced GSWLogCStdOut by +statusLogWithFormat: replaced LOGAssertGood by GSWLogAssertGood * GSWAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWComponent.m: replaced LOGAssertGood by GSWLogAssertGood * GSWContext.m: replaced LOGAssertGood by GSWLogAssertGood * GSWRequest.m: replaced LOGAssertGood by GSWLogAssertGood * GSWResponse.m: replaced LOGAssertGood by GSWLogAssertGood * GSWSessionStore.m: replaced LOGAssertGood by GSWLogAssertGood * Adator GSWAppRequest.c: test on instance in GSWAppRequest_SendAppRequestT oApp * Adator GSWLoadBalancing.c: added debug messages * Adaptor GSWHTTPRequest.c: corrected bug in GSWHTTPRequest_SendRequest * Adaptor: GSWAppConnectSocket.c: added debug messages * GSWeb.framework/Makefile.preamble: removed -lNGReflection git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@6345 72102866-910b-0410-8b05-ffd578937521
2000-03-20 15:50:51 +00:00
[GSWApplication statusLogWithFormat:@"%@",requestDateString];
NSDebugMLLog(@"info",
@"%@ %p",
requestDateString,
(void*)_newThread);
[_newThread run:nil];
DESTROY(_newThread);
requestDate=[NSCalendarDate calendarDate];
requestDateString=[NSString stringWithFormat:@"Stop Thread (Mono) %@",requestDate];
2000-03-20 Manuel Guesdon <mguesdon@sbuilders.com> * GSWDebug.h: remove unused functions * GSWApplication.h/.m:Added: GSWDebuggingStatus category +isStatusDebuggingEnabled +setStatusDebuggingEnabled: +debugSetConfigFilePath +setDebugSetConfigFilePath: * GSWApplication.h/.m: replaced GSWDebugStdLog by [GSWApp statusDebug...] replaced executeWithClasses: with executeWithClassArray: corrections for different warnings change in GSWApplicationDebugSetChange() to use GSWDebugSetConfigFi lePath option * GSWConfig.h: added GSWOPTVALUE_StatusDebuggingEnabled * GSWConstants.h/.m: added GSWOPT_StatusDebuggingEnabled added GSWOPT_DebugSetConfigFilePath * INSTALL: reflect changes of adaptors,... * GSWUtil.h/.m: corrections for different warnings removed MD5HexDigest() * GSWCheckBoxListm: replaced LOGAssertGood by GSWLogAssertGood * GSWRadioButtonList.m: replaced LOGAssertGood by GSWLogAssertGood * GSWDefaultAdaptorThread.m: replaced GSWLogCStdOut by +statusLogWithFormat : corrections for different warnings * GSWDefaultAdaptor.m: replaced GSWLogCStdOut by +statusLogWithFormat: * GSWSessionTimeOutManager.m: replaced GSWLogCStdOut by +statusLogWithForma t: * GSWKeyValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLStaticElement.m: corrections for different warnings * GSWConstantValueAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWHTMLDynamicElement.m: corrections for different warnings * GSWStatsPage.m: corrections for different warnings * GSWExceptionPage.m: removed GSWLogCStdOut calls * GSWSession.m: replaced GSWLogCStdOut by +statusLogWithFormat: replaced LOGAssertGood by GSWLogAssertGood * GSWAssociation.m: replaced LOGAssertGood by GSWLogAssertGood * GSWComponent.m: replaced LOGAssertGood by GSWLogAssertGood * GSWContext.m: replaced LOGAssertGood by GSWLogAssertGood * GSWRequest.m: replaced LOGAssertGood by GSWLogAssertGood * GSWResponse.m: replaced LOGAssertGood by GSWLogAssertGood * GSWSessionStore.m: replaced LOGAssertGood by GSWLogAssertGood * Adator GSWAppRequest.c: test on instance in GSWAppRequest_SendAppRequestT oApp * Adator GSWLoadBalancing.c: added debug messages * Adaptor GSWHTTPRequest.c: corrected bug in GSWHTTPRequest_SendRequest * Adaptor: GSWAppConnectSocket.c: added debug messages * GSWeb.framework/Makefile.preamble: removed -lNGReflection git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@6345 72102866-910b-0410-8b05-ffd578937521
2000-03-20 15:50:51 +00:00
[GSWApplication statusLogWithFormat:@"%@",requestDateString];
NSDebugMLLog0(@"info",
requestDateString);
};
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
};
NSDebugMLLog(@"trace",@"Try Lock");
if ([self tryLock])
{
BOOL accept=YES;//NEW[waitingThreads count]<queueSize;
NSDebugMLLog(@"trace",@"Accept=%d",accept);
NS_DURING
{
if (accept)
{
[_listenHandle acceptConnectionInBackgroundAndNotify];
blocked=NO;
printf("ACCEPT ThreadID=%p A2 readInProgress=%d\n",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
}
else
printf("NOT ACCEPT ThreadID=%p A2 readInProgress=%d\n",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
NSDebugMLog(@"ThreadID=%p A2 readInProgress=%d",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
printf("ThreadID=%p A2 readInProgress=%d\n",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
}
NS_HANDLER
{
LOGException(@"%@ (%@)",
localException,[localException reason]);
//TODO
blocked=!accept;
[self unlock];
[localException raise];
}
NS_ENDHANDLER;
blocked=!accept;
printf("blocked=%d",blocked);
[self unlock];
};
NSDebugMLLog(@"trace",@"end announceNewConnection");
printf("END NEWCONN APP selfLockn=%d selfLock_thread_id=%p globalLockn=%d globalLock_thread_id=%p threads count=%d waitingThreads count=%d blocked=%d acceptOK\n",
(int)([GSWApplication application]->selfLockn),
(void*)([GSWApplication application]->selfLock_thread_id),
(int)([GSWApplication application]->globalLockn),
(void*)([GSWApplication application]->globalLock_thread_id),
[threads count],
[waitingThreads count],
blocked);
LOGObjectFnStop();
return self;
};
//--------------------------------------------------------------------
-(void)adaptorThreadExited:(GSWDefaultAdaptorThread*)adaptorThread_
{
LOGObjectFnStart();
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
// NSDebugMLLog(@"trace",@"adaptorThreadExited");
printf("adaptorThreadExited\n");
printf("EXIT APP selfLockn=%d selfLock_thread_id=%p globalLockn=%d globalLock_thread_id=%p threads count=%d waitingThreads count=%d blocked=%d\n",
(int)([GSWApplication application]->selfLockn),
(void*)([GSWApplication application]->selfLock_thread_id),
(int)([GSWApplication application]->globalLockn),
(void*)([GSWApplication application]->globalLock_thread_id),
[threads count],
[waitingThreads count],
blocked);
if ([self tryLock])
{
NSAutoreleasePool* pool=nil;
#ifndef NDEBUG
pool=[NSAutoreleasePool new];
NSDebugMLLog(@"low",
@"remove thread %p",
(void*)adaptorThread_);
DESTROY(pool);
#endif
NS_DURING
{
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
[adaptorThread_ retain];
[adaptorThread_ autorelease];
[threads removeObject:adaptorThread_];
}
NS_HANDLER
{
pool=[NSAutoreleasePool new];
LOGException(@"%@ (%@)",
localException,
[localException reason]);
DESTROY(pool);
//TODO
// [self unlock];
// [localException raise];
}
NS_ENDHANDLER;
#ifndef NDEBUG
pool=[NSAutoreleasePool new];
NSDebugMLLog(@"low",
@"[waitingThreads count]=%d [threads count]=%d",
[waitingThreads count],
[threads count]);
DESTROY(pool);
#endif
if ([threads count]==0)
{
BOOL _isApplicationRequestHandlingLocked=[[GSWApplication application] isRequestHandlingLocked];
if (_isApplicationRequestHandlingLocked)
{
pool=[NSAutoreleasePool new];
LOGSeriousError0(@"Application RequestHandling is LOCKED !!!");
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
NSAssert(NO,@"Application RequestHandling is LOCKED !!!");//TODO-NOW
2000-08-14 Manuel Guesdon <mguesdon@orange-concept.com> * GSWeb.framework/GSWApplication.m: added "exit" in terminate generate simple response in -handleException:inContext: be sure to have a context in -_handleException:inContext: generate simple response in -_handleException:inContext: generate simple response in -handlePageRestorationErrorInContext: be sure to have a context in -_handlePageRestorationErrorInContext: generate simple response in -_handlePageRestorationErrorInContext: generate simple response in -handleSessionCreationErrorInContext: generate simple response in -handleSessionRestorationErrorInContext: be sure to have a context in -_handleSessionRestorationErrorInContext: generate simple response in -_handleSessionRestorationErrorInContext: * GSWeb.framework/GSWComponentRequestHandler.m: added default response when we catch exceptions,... handle more exceptions * GSWeb.framework/GSWConstants.h/.m: added GSWHTTPHeader_UserAgent * GSWeb.framework/GSWDefaultAdaptor.m: terminate application if it is locked * GSWeb.framework/GSWDefaultAdaptorThread.m: Added default response to handle exceptions and various errors Correct bug in request data reading (request datas were sometimes not complely readen) * GSWeb.framework/GSWFileUpload.m: Added Exception handling * GSWeb.framework/GSWRequest.m: add exception handling * GSWeb.framework/GSWResponse.h/.m: added GSWResponse (GSWResponseError) * GSWAdaptor/Apache/GNUmakefile: added -DEAPI * GSWAdaptor/Apache/mod_gsweb.c: added debug traces * GSWAdaptor/common/GSWConfig.c/.h: added debug traces, added init parameter * Makefile.postamble: added docs generation * Doc/GNUstepWeb-HOWTO moved to howto.gsdoc * Doc/gsweb.gsdoc: new file * GSWeb.framework/Makefile.postamble: added docs generation * GSWExtensions.framework/Makefile.postamble: added docs generation * GSWExtensionsGSW.framework/Makefile.postamble: added docs generation git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@7244 72102866-910b-0410-8b05-ffd578937521
2000-08-25 10:36:16 +00:00
[[GSWApplication application] terminate];
DESTROY(pool);
};
};
if ([waitingThreads count]>0 && [threads count]<workerThreadCount)
{
NS_DURING
{
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
GSWDefaultAdaptorThread* _thread=nil;
while(!_thread && [waitingThreads count]>0)
{
_thread=[waitingThreads objectAtIndex:0];
if ([_thread isExpired])
{
// [GSWDefaultAdaptorThread sendRetryLasterResponseToStream:[_thread stream]];
_thread=nil;
}
else
[threads addObject:_thread];
[waitingThreads removeObjectAtIndex:0];
};
if (_thread)
{
#ifndef NDEBUG
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
pool=[NSAutoreleasePool new];
[GSWApplication statusLogWithFormat:@"Lauch waiting Thread"];
NSDebugMLLog(@"info",
@"Lauch waiting Thread %p",
(void*)_thread);
DESTROY(pool);
#endif
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
if (isMultiThreadEnabled)
[NSThread detachNewThreadSelector:@selector(run:)
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
toTarget:_thread
withObject:nil];
else
[_thread run:nil];
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
};
}
NS_HANDLER
{
pool=[NSAutoreleasePool new];
LOGException(@"%@ (%@)",
localException,
[localException reason]);
DESTROY(pool);
//TODO
// [self unlock];
// [localException raise];
}
NS_ENDHANDLER;
};
NS_DURING
{
BOOL accept=[waitingThreads count]<queueSize;
if (blocked && accept)
{
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
printf("ACCEPT AGAIN ThreadID=%p A2 readInProgress=%d\n",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
[fileHandle acceptConnectionInBackgroundAndNotify];
blocked=NO;
};
}
NS_HANDLER
{
pool=[NSAutoreleasePool new];
LOGException(@"%@ (%@)",
localException,
[localException reason]);
DESTROY(pool);
//TODO
// [self unlock];
// [localException raise];
}
NS_ENDHANDLER;
[self unlock];
};
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
//TODO remove
printf("END EXIT APP selfLockn=%d selfLock_thread_id=%p globalLockn=%d globalLock_thread_id=%p threads count=%d waitingThreads count=%d blocked=%d\n",
(int)([GSWApplication application]->selfLockn),
(void*)([GSWApplication application]->selfLock_thread_id),
(int)([GSWApplication application]->globalLockn),
(void*)([GSWApplication application]->globalLock_thread_id),
[threads count],
[waitingThreads count],
blocked);
// (int)(((UnixFileHandle*)fileHandle)->acceptOK));
NSDebugMLog(@"ThreadID=%p B2 readInProgress=%d",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
printf("ThreadID=%p B2 readInProgress=%d\n",(void*)objc_thread_id(),(int)[fileHandle readInProgress]);
LOGObjectFnStop();
};
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
-(NSFileHandle*)fileHandle
{
return fileHandle;
};
//--------------------------------------------------------------------
//NDFN
-(id)announceBrokenConnection:(id)notification
{
LOGObjectFnNotImplemented(); //TODOFN
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
NSDebugMLLog(@"trace",@"announceBrokenConnection");
// [self shutDownConnectionWithSocket:[in_port _port_socket]];
return self;
};
//--------------------------------------------------------------------
// lock
-(BOOL)tryLock
{
BOOL _locked=NO;
LOGObjectFnStart();
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
printf("self=%p ThreadID=%p TRYLOCK\n",self,(void*)objc_thread_id());
_locked=[selfLock tmptryLockBeforeDate:[NSDate dateWithTimeIntervalSinceNow:90]];
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
printf("self=%p ThreadID=%p TRYLOCK LOCKED ?\n",self,(void*)objc_thread_id());
LOGObjectFnStop();
return _locked;
};
//--------------------------------------------------------------------
// unlock
-(void)unlock
{
LOGObjectFnStart();
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
printf("self=%p ThreadID=%p UNLOCK\n",self,(void*)objc_thread_id());
[selfLock tmpunlock];
2001-10-28 Manuel Guesdon <mguesdon@orange-concept.com> Compilation is OK but this version hasn't been tested * GSWeb.framework/GSWFileUpload.m: Added Traces corrected bug when uploading string type data. * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.m: handle nil fileInfo retrieving, added isDeleteEnabled * GSWExtensionsGSW.framework/GSWFileUploadFormComponent.gswc/GSWFileUploadFormComponent.html/.gswd: added isDeleteEnabled condition * GSWAdaptors/commun/GSWConfig.c/.h: added adaptorTemplatesPath handle (per application and global) * GSWAdaptors/commun/GSWApp.h/.c: added pszAdaptorTemplatesPath * GSWAdaptors/commun/GSWHTTPResponse.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWAppRequest.c added parameter to GSWTemplate_* calls * GSWAdaptors/commun/GSWTemplates.h/.c: added GSWApp* parameter o handle per application Templates * GSWeb.framework/GSWResourcesManager.m: traces * GSWeb.framework/GSWApplication.m: o change trace level from "low" to "application" o added filterLanguages: method * GSWeb.framework/GSWContext.m: added filterLanguages: call in _languages * GSWeb.framework/GSWAssociations.m: traces * GSWeb.framework/GSWSession.m: Added Traces * GSWeb.framework/GSWUtils.m: Added warning * GSWeb.framework/GSWRequest.m: Added Traces * GSWeb.framework/GSWWOCompatibility.h/.m: added WOImageButton * GSWeb.framework/GSWPopUpButton.m: Added Traces * GSWeb.framework/GSWResponse.m: fix stringByEscapingHTMLString: o stringByEscapingHTMLAttributeValue: o stringByConvertingToHTMLEntities: o stringByConvertingToHTML: * GSWeb.framework/NSObject+IVarAccess+PerformSel.m: added EOF access type git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/gsweb/trunk@11266 72102866-910b-0410-8b05-ffd578937521
2001-10-28 10:29:17 +00:00
printf("self=%p ThreadID=%p UNLOCK UNLOCKED ?\n",self,(void*)objc_thread_id());
LOGObjectFnStop();
};
@end
//====================================================================
@implementation GSWDefaultAdaptor (GSWDefaultAdaptorA)
-(void)stop
{
LOGObjectFnNotImplemented(); //TODOFN
};
-(void)run
{
LOGObjectFnNotImplemented(); //TODOFN
};
-(void)_runOnce
{
LOGObjectFnNotImplemented(); //TODOFN
};
@end