userlibandfileserver/fileserver/sfile/sf_nbs.cpp
branchGCC_SURGE
changeset 221 39b39e1a406e
parent 201 43365a9b78a3
child 299 b5a01337d018
equal deleted inserted replaced
219:0ff03867bdb6 221:39b39e1a406e
    20 // Make a directory path.
    20 // Make a directory path.
    21 //
    21 //
    22 	{
    22 	{
    23 	__PRINT(_L("TFsMkDir::DoRequestL(CFsRequest* aRequest)"));
    23 	__PRINT(_L("TFsMkDir::DoRequestL(CFsRequest* aRequest)"));
    24 
    24 
    25     TInt r = CheckDiskSpace(0, aRequest);
    25     TInt r = CheckDiskSpace(KMinFsCreateObjTreshold, aRequest);
    26     if(r != KErrNone)
    26     if(r != KErrNone)
    27         return r;
    27         return r;
    28 
    28 
    29 	r=aRequest->Drive()->CheckMount();
    29 	r=aRequest->Drive()->CheckMount();
    30 	if (r!=KErrNone)
    30 	if (r!=KErrNone)
   141 //
   141 //
   142 // Rename a file or directory. Wild cards not allowed.
   142 // Rename a file or directory. Wild cards not allowed.
   143 //
   143 //
   144 	{
   144 	{
   145 	__PRINT(_L("TFsRename::DoRequestL(CFsRequest* aRequest)"));
   145 	__PRINT(_L("TFsRename::DoRequestL(CFsRequest* aRequest)"));
   146     TInt r = CheckDiskSpace(0, aRequest);
   146     TInt r = CheckDiskSpace(KMinFsCreateObjTreshold, aRequest);
   147     if(r != KErrNone)
   147     if(r != KErrNone)
   148         return r;
   148         return r;
   149 	
   149 	
   150     r = aRequest->Drive()->Rename(aRequest->Src().FullName().Mid(2),aRequest->Dest().FullName().Mid(2));
   150     r = aRequest->Drive()->Rename(aRequest->Src().FullName().Mid(2),aRequest->Dest().FullName().Mid(2));
   151 	return (r);
   151 	return (r);
   180 // Replace an old file with a new file atomically
   180 // Replace an old file with a new file atomically
   181 //
   181 //
   182 	{
   182 	{
   183 	__PRINT(_L("TFsReplace::DoRequestL(CFsRequest* aRequest)"));
   183 	__PRINT(_L("TFsReplace::DoRequestL(CFsRequest* aRequest)"));
   184 
   184 
   185     TInt r = CheckDiskSpace(0, aRequest);
   185     TInt r = CheckDiskSpace(KMinFsCreateObjTreshold, aRequest);
   186     if(r != KErrNone)
   186     if(r != KErrNone)
   187         return r;
   187         return r;
   188 
   188 
   189 	return(aRequest->Drive()->Replace(aRequest->Src().FullName().Mid(2),aRequest->Dest().FullName().Mid(2)));
   189 	return(aRequest->Drive()->Replace(aRequest->Src().FullName().Mid(2),aRequest->Dest().FullName().Mid(2)));
   190 	}
   190 	}
   224 	TPtrC filePath = aRequest->Src().FullName().Mid(2);
   224 	TPtrC filePath = aRequest->Src().FullName().Mid(2);
   225 	TInt r=aRequest->Drive()->Entry(filePath,t);
   225 	TInt r=aRequest->Drive()->Entry(filePath,t);
   226 	if (r!=KErrNone)
   226 	if (r!=KErrNone)
   227 		return(r);
   227 		return(r);
   228 
   228 
   229 	// If the file is open, get the file size from the CFileCB object as there may be cached data
       
   230 	CFileCB* file;
       
   231 	aRequest->Drive()->IsFileOpen(filePath, file);
       
   232 	if (file)
       
   233 		t.SetFileSize(file->CachedSize64());
       
   234 
       
   235 	TPckgC<TEntry> p(t);
   229 	TPckgC<TEntry> p(t);
   236 	aRequest->WriteL(KMsgPtr1,p);
   230 	aRequest->WriteL(KMsgPtr1,p);
   237 	return(KErrNone);
   231 	return(KErrNone);
   238 	}
   232 	}
   239 
   233 
   259 // Set the attributes and the modified date and time.
   253 // Set the attributes and the modified date and time.
   260 //
   254 //
   261 	{
   255 	{
   262 	__PRINT(_L("TFsSetEntry::DoRequestL(CFsRequest* aRequest)"));
   256 	__PRINT(_L("TFsSetEntry::DoRequestL(CFsRequest* aRequest)"));
   263 
   257 
   264     TInt r = CheckDiskSpace(0, aRequest);
   258     TInt r = CheckDiskSpace(KMinFsCreateObjTreshold, aRequest);
   265     if(r != KErrNone)
   259     if(r != KErrNone)
   266         return r;
   260         return r;
   267 
   261 
   268 	TTime entryTime;
   262 	TTime entryTime;
   269 	TPckgBuf<TTime> timeBuf;
   263 	TPckgBuf<TTime> timeBuf;
   890 TInt TFsCreatePrivatePath::DoRequestL(CFsRequest* aRequest)
   884 TInt TFsCreatePrivatePath::DoRequestL(CFsRequest* aRequest)
   891 //
   885 //
   892 //	create the private path unless it already exists
   886 //	create the private path unless it already exists
   893 //
   887 //
   894 	{
   888 	{
   895     TInt ret = CheckDiskSpace(0, aRequest);
   889     TInt ret = CheckDiskSpace(KMinFsCreateObjTreshold, aRequest);
   896     if(ret != KErrNone)
   890     if(ret != KErrNone)
   897         return ret;
   891         return ret;
   898 
   892 
   899 	TBuf<30> pPath(KPrivate);	
   893 	TBuf<30> pPath(KPrivate);	
   900 	pPath += KSlash;
   894 	pPath += KSlash;