Added range offsets to open stream methods.

This commit is contained in:
warren%netscape.com 1999-06-11 01:37:43 +00:00
Родитель c993890233
Коммит 7c8cb8eb81
18 изменённых файлов: 55 добавлений и 38 удалений

Просмотреть файл

@ -40,13 +40,21 @@ interface nsIChannel : nsISupports
/**
* Opens a blocking input stream to the URL's specified source.
* @param startPosition - The offset from the start of the data
* from which to read.
* @param readCount - The number of bytes to read. If -1, everything
* up to the end of the data is read. If greater than the end of
* the data, the amount available is returned in the stream.
*/
nsIInputStream OpenInputStream();
nsIInputStream OpenInputStream(in unsigned long startPosition,
in long readCount);
/**
* Opens a blocking output stream to the URL's specified destination.
* @param startPosition - The offset from the start of the data
* from which to begin writing.
*/
nsIOutputStream OpenOutputStream();
nsIOutputStream OpenOutputStream(in unsigned long startPosition);
/**
* Reads asynchronously from the URL's specified source. Notifications

Просмотреть файл

@ -208,9 +208,11 @@ nsFileTransport::AsyncWrite(nsIInputStream* fromStream,
}
NS_IMETHODIMP
nsFileTransport::OpenInputStream(nsIInputStream* *result)
nsFileTransport::OpenInputStream(PRUint32 startPosition, PRInt32 readCount,
nsIInputStream* *result)
{
nsresult rv;
NS_ASSERTION(startPosition == 0, "fix me");
nsIStreamListener* syncListener;
nsIBufferInputStream* inStr;
@ -235,7 +237,7 @@ nsFileTransport::OpenInputStream(nsIInputStream* *result)
}
NS_IMETHODIMP
nsFileTransport::OpenOutputStream(nsIOutputStream* *result)
nsFileTransport::OpenOutputStream(PRUint32 startPosition, nsIOutputStream* *result)
{
return NS_ERROR_NOT_IMPLEMENTED;
}

Просмотреть файл

@ -37,8 +37,8 @@ public:
// nsIChannel methods:
NS_IMETHOD GetURI(nsIURI * *aURL);
NS_IMETHOD OpenInputStream(nsIInputStream **_retval);
NS_IMETHOD OpenOutputStream(nsIOutputStream **_retval);
NS_IMETHOD OpenInputStream(PRUint32 startPosition, PRInt32 readCount, nsIInputStream **_retval);
NS_IMETHOD OpenOutputStream(PRUint32 startPosition, nsIOutputStream **_retval);
NS_IMETHOD AsyncRead(PRUint32 startPosition, PRInt32 readCount,
nsISupports *ctxt,
nsIEventQueue *eventQueue,

Просмотреть файл

@ -1035,9 +1035,11 @@ nsSocketTransport::AsyncWrite(nsIInputStream* aFromStream,
NS_IMETHODIMP
nsSocketTransport::OpenInputStream(nsIInputStream* *result)
nsSocketTransport::OpenInputStream(PRUint32 startPosition, PRInt32 readCount,
nsIInputStream* *result)
{
nsresult rv = NS_OK;
NS_ASSERTION(startPosition == 0, "fix me");
// Enter the socket transport lock...
nsAutoLock lock(mLock);
@ -1081,9 +1083,10 @@ nsSocketTransport::OpenInputStream(nsIInputStream* *result)
NS_IMETHODIMP
nsSocketTransport::OpenOutputStream(nsIOutputStream* *result)
nsSocketTransport::OpenOutputStream(PRUint32 startPosition, nsIOutputStream* *result)
{
nsresult rv = NS_OK;
NS_ASSERTION(startPosition == 0, "fix me");
// Enter the socket transport lock...
nsAutoLock lock(mLock);

Просмотреть файл

@ -69,8 +69,8 @@ public:
// nsIChannel methods:
NS_IMETHOD GetURI(nsIURI * *aURL);
NS_IMETHOD OpenInputStream(nsIInputStream **_retval);
NS_IMETHOD OpenOutputStream(nsIOutputStream **_retval);
NS_IMETHOD OpenInputStream(PRUint32 startPosition, PRInt32 readCount, nsIInputStream **_retval);
NS_IMETHOD OpenOutputStream(PRUint32 startPosition, nsIOutputStream **_retval);
NS_IMETHOD AsyncRead(PRUint32 startPosition, PRInt32 readCount,
nsISupports *ctxt,
nsIEventQueue *eventQueue,

Просмотреть файл

@ -27,6 +27,7 @@ MODULE = netwerk
include $(DEPTH)/config/autoconf.mk
DIRS= \
file \
ftp \
http \
$(NULL)

Просмотреть файл

@ -19,7 +19,7 @@ topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
LIBRARY_NAME = ftp
LIBRARY_NAME = ftpprotocol
IS_COMPONENT = 1

Просмотреть файл

@ -18,7 +18,7 @@ MODULE = netwerk
DEPTH = ..\..\..\..
MAKE_OBJ_TYPE=DLL
DLLNAME=ftp
DLLNAME=ftpprotocol
DLL=.\$(OBJDIR)\$(DLLNAME).dll
LCFLAGS = -DWIN32_LEAN_AND_MEAN -D_IMPL_NS_NET

Просмотреть файл

@ -43,6 +43,8 @@ nsFTPChannel::nsFTPChannel()
: mUrl(nsnull), mConnected(PR_FALSE), mListener(nsnull) {
nsresult rv;
NS_INIT_REFCNT();
NS_WITH_SERVICE(nsIEventQueueService, eventQService, kEventQueueService, &rv);
if (NS_SUCCEEDED(rv)) {
@ -50,8 +52,6 @@ nsFTPChannel::nsFTPChannel()
}
if (NS_FAILED(rv))
mEventQueue = nsnull;
NS_INIT_REFCNT();
}
nsFTPChannel::~nsFTPChannel() {
@ -112,13 +112,14 @@ nsFTPChannel::GetURI(nsIURI * *aURL)
}
NS_IMETHODIMP
nsFTPChannel::OpenInputStream(nsIInputStream* *result)
nsFTPChannel::OpenInputStream(PRUint32 startPosition, PRInt32 readCount,
nsIInputStream **_retval)
{
return NS_ERROR_NOT_IMPLEMENTED;
}
NS_IMETHODIMP
nsFTPChannel::OpenOutputStream(nsIOutputStream* *result)
nsFTPChannel::OpenOutputStream(PRUint32 startPosition, nsIOutputStream **_retval)
{
return NS_ERROR_NOT_IMPLEMENTED;
}

Просмотреть файл

@ -37,8 +37,8 @@ public:
// nsIChannel methods:
NS_IMETHOD GetURI(nsIURI * *aURL);
NS_IMETHOD OpenInputStream(nsIInputStream **result);
NS_IMETHOD OpenOutputStream(nsIOutputStream **result);
NS_IMETHOD OpenInputStream(PRUint32 startPosition, PRInt32 readCount, nsIInputStream **_retval);
NS_IMETHOD OpenOutputStream(PRUint32 startPosition, nsIOutputStream **_retval);
NS_IMETHOD AsyncRead(PRUint32 startPosition, PRInt32 readCount,
nsISupports *ctxt,
nsIEventQueue *eventQueue,

Просмотреть файл

@ -124,11 +124,11 @@ nsFtpConnectionThread::Run() {
if (NS_FAILED(rv)) return rv;
// get the output stream so we can write to the server
rv = lCPipe->OpenOutputStream(&mCOutStream);
rv = lCPipe->OpenOutputStream(0, &mCOutStream);
if (NS_FAILED(rv)) return rv;
// get the input stream so we can read data from the server.
rv = lCPipe->OpenInputStream(&mCInStream);
rv = lCPipe->OpenInputStream(0, -1, &mCInStream);
if (NS_FAILED(rv)) return rv;
@ -1115,14 +1115,14 @@ nsFtpConnectionThread::Run() {
if (mAction == GET) {
// get the input stream so we can read data from the server.
rv = lDPipe->OpenInputStream(&mDInStream);
rv = lDPipe->OpenInputStream(0, -1, &mDInStream);
if (NS_FAILED(rv)) {
mState = FTP_ERROR;
break;
}
} else {
// get the output stream so we can write to the server
rv = lDPipe->OpenOutputStream(&mDOutStream);
rv = lDPipe->OpenOutputStream(0, &mDOutStream);
if (NS_FAILED(rv)) {
mState = FTP_ERROR;
break;

Просмотреть файл

@ -19,7 +19,7 @@ topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
LIBRARY_NAME = http
LIBRARY_NAME = httpprotocol
IS_COMPONENT = 1

Просмотреть файл

@ -30,7 +30,7 @@ MODULE=netwerk
IS_COMPONENT=1
MAKE_OBJ_TYPE=DLL
DLLNAME=plughttp
DLLNAME=httpprotocol
DLL=.\$(OBJDIR)\$(DLLNAME).dll
LLIBS= $(LLIBS) \
@ -44,13 +44,13 @@ EXPORTS= \
nsHTTPCID.h \
$(NULL)
CPP_OBJS= \
.\$(OBJDIR)\nsHTTPHandler.obj \
.\$(OBJDIR)\nsHTTPHandlerFactory.obj \
.\$(OBJDIR)\nsHTTPChannel.obj \
.\$(OBJDIR)\nsHTTPRequest.obj \
.\$(OBJDIR)\nsHTTPResponseListener.obj \
.\$(OBJDIR)\nsHTTPResponse.obj \
CPP_OBJS= \
.\$(OBJDIR)\nsHTTPHandler.obj \
.\$(OBJDIR)\nsHTTPHandlerFactory.obj \
.\$(OBJDIR)\nsHTTPChannel.obj \
.\$(OBJDIR)\nsHTTPRequest.obj \
.\$(OBJDIR)\nsHTTPResponseListener.obj \
.\$(OBJDIR)\nsHTTPResponse.obj \
$(NULL)
LOCAL_INCLUDES=-I.

Просмотреть файл

@ -113,7 +113,8 @@ nsHTTPChannel::GetURI(nsIURI* *o_URL)
}
NS_IMETHODIMP
nsHTTPChannel::OpenInputStream(nsIInputStream* *o_Stream)
nsHTTPChannel::OpenInputStream(PRUint32 startPosition, PRInt32 readCount,
nsIInputStream **o_Stream)
{
#if 0
nsresult rv;
@ -139,7 +140,7 @@ nsHTTPChannel::OpenInputStream(nsIInputStream* *o_Stream)
}
NS_IMETHODIMP
nsHTTPChannel::OpenOutputStream(nsIOutputStream* *o_Stream)
nsHTTPChannel::OpenOutputStream(PRUint32 startPosition, nsIOutputStream **_retval)
{
return NS_ERROR_NOT_IMPLEMENTED;
}

Просмотреть файл

@ -57,8 +57,8 @@ public:
// nsIChannel methods:
NS_IMETHOD GetURI(nsIURI * *aURL);
NS_IMETHOD OpenInputStream(nsIInputStream **result);
NS_IMETHOD OpenOutputStream(nsIOutputStream **result);
NS_IMETHOD OpenInputStream(PRUint32 startPosition, PRInt32 readCount, nsIInputStream **_retval);
NS_IMETHOD OpenOutputStream(PRUint32 startPosition, nsIOutputStream **_retval);
NS_IMETHOD AsyncRead(PRUint32 startPosition, PRInt32 readCount,
nsISupports *ctxt,
nsIEventQueue *eventQueue,

Просмотреть файл

@ -20,6 +20,7 @@ DEPTH = ..\..
MODULE = netwerk
DIRS= \
file \
ftp \
http \
$(NULL)

Просмотреть файл

@ -348,8 +348,8 @@ TestConnection::TestConnection(const char* aHostName, PRInt32 aPort, PRBool aAsy
}
// Synchronous transport...
else {
rv = mTransport->OpenInputStream (&mInStream);
rv = mTransport->OpenOutputStream(&mOutStream);
rv = mTransport->OpenInputStream(0, -1, &mInStream);
rv = mTransport->OpenOutputStream(0, &mOutStream);
}
}
}

Просмотреть файл

@ -35,7 +35,7 @@ LINCS = \
-I$(PUBLIC)\xpcom \
-I$(PUBLIC)\raptor \
-I$(PUBLIC)\netwerk \
-I$(PUBLIC)\plughttp \
-I$(PUBLIC)\plughttp \
$(NULL)
LLIBS= \