diff --git a/netwerk/protocol/ftp/src/nsFtpStreamListenerEvent.cpp b/netwerk/protocol/ftp/src/nsFtpStreamListenerEvent.cpp deleted file mode 100644 index fbf281c4ea3b..000000000000 --- a/netwerk/protocol/ftp/src/nsFtpStreamListenerEvent.cpp +++ /dev/null @@ -1,264 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 4 -*- - * - * The contents of this file are subject to the Netscape Public License - * Version 1.0 (the "NPL"); you may not use this file except in - * compliance with the NPL. You may obtain a copy of the NPL at - * http://www.mozilla.org/NPL/ - * - * Software distributed under the NPL is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL - * for the specific language governing rights and limitations under the - * NPL. - * - * The Initial Developer of this code under the NPL is Netscape - * Communications Corporation. Portions created by Netscape are - * Copyright (C) 1998 Netscape Communications Corporation. All Rights - * Reserved. - */ - -#include "nsFtpStreamListenerEvent.h" -#include "nsIBufferInputStream.h" -#include "nscore.h" -#include "nsIChannel.h" -#include "nsIStringStream.h" - -nsFtpStreamListenerEvent::nsFtpStreamListenerEvent(nsIStreamListener* listener, - nsIChannel* channel, - nsISupports* context) - : mListener(listener), mChannel(channel), mContext(context) -{ - NS_ADDREF(mListener); - NS_ADDREF(mChannel); - NS_IF_ADDREF(mContext); -} - -nsFtpStreamListenerEvent::~nsFtpStreamListenerEvent() -{ - NS_RELEASE(mListener); - NS_RELEASE(mChannel); - NS_IF_RELEASE(mContext); -} - -void PR_CALLBACK nsFtpStreamListenerEvent::HandlePLEvent(PLEvent* aEvent) -{ - // WARNING: This is a dangerous cast since it must adjust the pointer - // to compensate for the vtable... - nsFtpStreamListenerEvent *ev = (nsFtpStreamListenerEvent*)aEvent; - - ev->HandleEvent(); -} - -void PR_CALLBACK nsFtpStreamListenerEvent::DestroyPLEvent(PLEvent* aEvent) -{ - // WARNING: This is a dangerous cast since it must adjust the pointer - // to compensate for the vtable... - nsFtpStreamListenerEvent *ev = (nsFtpStreamListenerEvent*)aEvent; - - delete ev; -} - -nsresult -nsFtpStreamListenerEvent::Fire(nsIEventQueue* aEventQueue) -{ - NS_PRECONDITION(nsnull != aEventQueue, "nsIEventQueue for thread is null"); - - PL_InitEvent(this, nsnull, - (PLHandleEventProc) nsFtpStreamListenerEvent::HandlePLEvent, - (PLDestroyEventProc) nsFtpStreamListenerEvent::DestroyPLEvent); - - PRStatus status = aEventQueue->PostEvent(this); - return status == PR_SUCCESS ? NS_OK : NS_ERROR_FAILURE; -} - - - - -//////////////////////////////////////////////////////////////////////////////// -// -// OnStartRequest... -// -//////////////////////////////////////////////////////////////////////////////// - -NS_IMETHODIMP -nsFtpOnStartRequestEvent::HandleEvent() -{ - nsIStreamObserver* receiver = (nsIStreamObserver*)mListener; - return receiver->OnStartRequest(mChannel, mContext); -} -/* -NS_IMETHODIMP -nsMarshalingStreamObserver::OnStartRequest(nsISupports* context) -{ - nsresult rv = GetStatus(); - if (NS_FAILED(rv)) return rv; - - nsOnStartRequestEvent* event = - new nsOnStartRequestEvent(this, context); - if (event == nsnull) - return NS_ERROR_OUT_OF_MEMORY; - - rv = event->Fire(mEventQueue); - if (NS_FAILED(rv)) goto failed; - return rv; - - failed: - delete event; - return rv; -} -*/ -//////////////////////////////////////////////////////////////////////////////// -// -// OnDataAvailable -// -//////////////////////////////////////////////////////////////////////////////// - -nsFtpOnDataAvailableEvent::~nsFtpOnDataAvailableEvent() -{ - NS_RELEASE(mIStream); -} - -nsresult -nsFtpOnDataAvailableEvent::Init(nsIInputStream* aIStream, PRUint32 aSourceOffset, PRUint32 aLength) -{ - mLength = aLength; - mSourceOffset = aSourceOffset; - mIStream = aIStream; - NS_ADDREF(mIStream); - return NS_OK; -} - -NS_IMETHODIMP -nsFtpOnDataAvailableEvent::HandleEvent() -{ - nsresult rv; - nsIStreamListener* receiver = (nsIStreamListener*)mListener; - rv = receiver->OnDataAvailable(mChannel, mContext, mIStream, mSourceOffset, mLength); - return rv; -} - - -//////////////////////////////////////////////////////////////////////////////// -// -// ListOnDataAvailable -// -//////////////////////////////////////////////////////////////////////////////// - -nsFtpListOnDataAvailableEvent::~nsFtpListOnDataAvailableEvent() -{ - NS_RELEASE(mIStream); - if (mBuffer) - nsAllocator::Free(mBuffer); -} - -nsresult -nsFtpListOnDataAvailableEvent::Init(PRUint32 aSourceOffset, PRUint32 aLength, char *aBuffer) -{ - nsresult rv; - mBuffer = nsCRT::strdup(aBuffer); - if (!mBuffer) - return NS_ERROR_OUT_OF_MEMORY; - - nsISupports *stringStrmSup = nsnull; - rv = NS_NewCharInputStream(&stringStrmSup, mBuffer); // char streams keep ref to buffer - if (NS_FAILED(rv)) { - return rv; - } - - rv = stringStrmSup->QueryInterface(NS_GET_IID(nsIInputStream), (void**)&mIStream); - if (NS_FAILED(rv)) { - return rv; - } - NS_RELEASE(stringStrmSup); - - mLength = aLength; - mSourceOffset = aSourceOffset; - return NS_OK; -} - -NS_IMETHODIMP -nsFtpListOnDataAvailableEvent::HandleEvent() -{ - nsresult rv; - nsIStreamListener* receiver = (nsIStreamListener*)mListener; - rv = receiver->OnDataAvailable(mChannel, mContext, mIStream, mSourceOffset, mLength); - return rv; -} -/* -NS_IMETHODIMP -nsMarshalingStreamListener::OnDataAvailable(nsISupports* context, - nsIBufferInputStream *aIStream, - PRUint32 aSourceOffset, - PRUint32 aLength) -{ - nsresult rv = GetStatus(); - if (NS_FAILED(rv)) return rv; - - nsOnDataAvailableEvent* event = - new nsOnDataAvailableEvent(this, context); - if (event == nsnull) - return NS_ERROR_OUT_OF_MEMORY; - - rv = event->Init(aIStream, aSourceOffset, aLength); - if (NS_FAILED(rv)) goto failed; - rv = event->Fire(mEventQueue); - if (NS_FAILED(rv)) goto failed; - return rv; - - failed: - delete event; - return rv; -} -*/ -//////////////////////////////////////////////////////////////////////////////// -// -// OnStopRequest -// -//////////////////////////////////////////////////////////////////////////////// - -nsFtpOnStopRequestEvent::~nsFtpOnStopRequestEvent() -{ -} - -nsresult -nsFtpOnStopRequestEvent::Init(nsresult status, PRUnichar* aMsg) -{ - mStatus = status; - mMessage = aMsg; - return NS_OK; -} - -NS_IMETHODIMP -nsFtpOnStopRequestEvent::HandleEvent() -{ - nsIStreamObserver* receiver = (nsIStreamObserver*)mListener; - return receiver->OnStopRequest(mChannel, mContext, mStatus, mMessage); -} -/* -NS_IMETHODIMP -nsMarshalingStreamObserver::OnStopRequest(nsISupports* context, - nsresult aStatus, - const PRUnichar* aMsg) -{ - nsresult rv = GetStatus(); - if (NS_FAILED(rv)) return rv; - - nsOnStopRequestEvent* event = - new nsOnStopRequestEvent(this, context); - if (event == nsnull) - return NS_ERROR_OUT_OF_MEMORY; - - rv = event->Init(aStatus, aMsg); - if (NS_FAILED(rv)) goto failed; - rv = event->Fire(mEventQueue); - if (NS_FAILED(rv)) goto failed; - return rv; - - failed: - delete event; - return rv; -} -*/ -//////////////////////////////////////////////////////////////////////////////// - - -//////////////////////////////////////////////////////////////////////////////// diff --git a/netwerk/protocol/ftp/src/nsFtpStreamListenerEvent.h b/netwerk/protocol/ftp/src/nsFtpStreamListenerEvent.h deleted file mode 100644 index c89067cf9845..000000000000 --- a/netwerk/protocol/ftp/src/nsFtpStreamListenerEvent.h +++ /dev/null @@ -1,113 +0,0 @@ -/* -*- Mode: C++; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 4 -*- - * - * The contents of this file are subject to the Netscape Public License - * Version 1.0 (the "NPL"); you may not use this file except in - * compliance with the NPL. You may obtain a copy of the NPL at - * http://www.mozilla.org/NPL/ - * - * Software distributed under the NPL is distributed on an "AS IS" basis, - * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL - * for the specific language governing rights and limitations under the - * NPL. - * - * The Initial Developer of this code under the NPL is Netscape - * Communications Corporation. Portions created by Netscape are - * Copyright (C) 1998 Netscape Communications Corporation. All Rights - * Reserved. - */ -#ifndef ___nsftpstreamlistener_h__ -#define ___nsftpstreamlistener_h__ - -#include "nsIStreamListener.h" - -#include "nsIEventQueue.h" -#include "nscore.h" -#include "nsString.h" - -class nsFtpStreamListenerEvent : public PLEvent { -public: - nsFtpStreamListenerEvent(nsIStreamListener* listener, - nsIChannel* channel, nsISupports* context); - virtual ~nsFtpStreamListenerEvent(); - - nsresult Fire(nsIEventQueue* aEventQ); - - NS_IMETHOD HandleEvent() = 0; - -protected: - static void PR_CALLBACK HandlePLEvent(PLEvent* aEvent); - static void PR_CALLBACK DestroyPLEvent(PLEvent* aEvent); - - nsIStreamListener* mListener; - nsIChannel* mChannel; - nsISupports* mContext; -}; - -class nsFtpOnStartRequestEvent : public nsFtpStreamListenerEvent -{ -public: - nsFtpOnStartRequestEvent(nsIStreamListener* listener, - nsIChannel* channel, nsISupports* context) - : nsFtpStreamListenerEvent(listener, channel, context) {} - virtual ~nsFtpOnStartRequestEvent() {} - - NS_IMETHOD HandleEvent(); -}; - - -class nsFtpOnDataAvailableEvent : public nsFtpStreamListenerEvent -{ -public: - nsFtpOnDataAvailableEvent(nsIStreamListener* listener, - nsIChannel* channel, nsISupports* context) - : nsFtpStreamListenerEvent(listener, channel, context), - mIStream(nsnull), mLength(0) {} - virtual ~nsFtpOnDataAvailableEvent(); - - nsresult Init(nsIInputStream* aIStream, PRUint32 aSourceOffset, PRUint32 aLength); - NS_IMETHOD HandleEvent(); - -protected: - nsIInputStream* mIStream; - PRUint32 mSourceOffset; - PRUint32 mLength; -}; - -class nsFtpListOnDataAvailableEvent : public nsFtpStreamListenerEvent -{ -public: - nsFtpListOnDataAvailableEvent(nsIStreamListener* listener, - nsIChannel* channel, nsISupports* context) - : nsFtpStreamListenerEvent(listener, channel, context), - mIStream(nsnull), mLength(0), mBuffer(nsnull) {} - virtual ~nsFtpListOnDataAvailableEvent(); - - nsresult Init(PRUint32 aSourceOffset, PRUint32 aLength, char *aBuffer); - NS_IMETHOD HandleEvent(); - -protected: - nsIInputStream* mIStream; - PRUint32 mSourceOffset; - PRUint32 mLength; - char *mBuffer; -}; - - -class nsFtpOnStopRequestEvent : public nsFtpStreamListenerEvent -{ -public: - nsFtpOnStopRequestEvent(nsIStreamListener* listener, - nsIChannel* channel, nsISupports* context) - : nsFtpStreamListenerEvent(listener, channel, context), - mStatus(NS_OK), mMessage(nsnull) {} - virtual ~nsFtpOnStopRequestEvent(); - - nsresult Init(nsresult status, PRUnichar* aMsg); - NS_IMETHOD HandleEvent(); - -protected: - nsresult mStatus; - PRUnichar* mMessage; -}; - -#endif // ___nsftpstreamlistener_h__