policymanagement/dmutilserver/src/ACLStorage.cpp
changeset 73 ae69c2e8bc34
parent 0 b497e44ab2fc
equal deleted inserted replaced
71:d2517372cc44 73:ae69c2e8bc34
   389 {
   389 {
   390 	RDEBUG("DMUtilServer: CACLNode::SaveStringL - Start");
   390 	RDEBUG("DMUtilServer: CACLNode::SaveStringL - Start");
   391 
   391 
   392 	//create buffer for string
   392 	//create buffer for string
   393 	HBufC8* buf = HBufC8::NewL( Length());
   393 	HBufC8* buf = HBufC8::NewL( Length());
       
   394 	CleanupStack::PushL( buf );
       
   395 		
   394 	TPtr8 ptr = buf->Des();
   396 	TPtr8 ptr = buf->Des();
   395 
   397 
   396 	//clearflag
   398 	//clearflag
   397 	TPckgC<TInt> flagPck( iClearFlag);
   399 	TPckgC<TInt> flagPck( iClearFlag);
   398 	ptr.Append( flagPck);
   400 	ptr.Append( flagPck);
   414 		HBufC8* buf = iCommands[i]->SaveStringL();
   416 		HBufC8* buf = iCommands[i]->SaveStringL();
   415 		ptr.Append( *buf);
   417 		ptr.Append( *buf);
   416 		
   418 		
   417 		delete buf;
   419 		delete buf;
   418 	}
   420 	}
   419 	
   421 	CleanupStack::Pop( buf );
   420 	RDEBUG("DMUtilServer: CACLNode::SaveStringL - End");
   422 	RDEBUG("DMUtilServer: CACLNode::SaveStringL - End");
   421 	return buf;
   423 	return buf;
   422 }
   424 }
   423 
   425 
   424 // ----------------------------------------------------------------------------------------
   426 // ----------------------------------------------------------------------------------------
   518 	RDEBUG("DMUtilServer: CACLNode::CreateACLL - Start");
   520 	RDEBUG("DMUtilServer: CACLNode::CreateACLL - Start");
   519 
   521 
   520 
   522 
   521 	//Create ACL node
   523 	//Create ACL node
   522 	CACLNode * node = new (ELeave) CACLNode();
   524 	CACLNode * node = new (ELeave) CACLNode();
   523 
   525 	CleanupStack::PushL( node);
       
   526 		
   524 	TPtrC8 ptr( aACLString);
   527 	TPtrC8 ptr( aACLString);
   525 	TInt err( KErrNone);
   528 	TInt err( KErrNone);
   526 	
   529 	
   527 	//decode acl string
   530 	//decode acl string
   528 	while ( ptr.Length() && err == KErrNone)
   531 	while ( ptr.Length() && err == KErrNone)
   596 			CleanupStack::PushL( command);
   599 			CleanupStack::PushL( command);
   597 			node->iCommands.AppendL( command);
   600 			node->iCommands.AppendL( command);
   598 			CleanupStack::Pop( command);	
   601 			CleanupStack::Pop( command);	
   599 		}
   602 		}
   600 	}
   603 	}
   601 	
   604 	CleanupStack::Pop( node);	
   602 	RDEBUG("DMUtilServer: CACLNode::CreateACLL - End");
   605 	RDEBUG("DMUtilServer: CACLNode::CreateACLL - End");
   603 	return node;	
   606 	return node;	
   604 }
   607 }
   605 
   608 
   606 
   609 
   969 	RDEBUG8_3("DMUtilServer: Original ACL from DM tree node %S: %S", &aURI, &buf);
   972 	RDEBUG8_3("DMUtilServer: Original ACL from DM tree node %S: %S", &aURI, &buf);
   970 #else
   973 #else
   971 	//get old ACL values from dmdbhandler
   974 	//get old ACL values from dmdbhandler
   972 	CBufFlat* bufBase = CBufFlat::NewL( 1);
   975 	CBufFlat* bufBase = CBufFlat::NewL( 1);
   973 	User::LeaveIfError( iDbSession.Connect() );
   976 	User::LeaveIfError( iDbSession.Connect() );
       
   977 	CleanupClosePushL( iDbSession );
   974 	iDbSession.GetAclL( aURI, *bufBase, EFalse);
   978 	iDbSession.GetAclL( aURI, *bufBase, EFalse);
   975 iDbSession.Close();
   979 	CleanupStack::PopAndDestroy( ); // iDbSession
   976 
   980 
   977 	TPtrC8 aclPtr = bufBase->Ptr( 0 );
   981 	TPtrC8 aclPtr = bufBase->Ptr( 0 );
   978 	
   982 	
   979 	RDEBUG8_3("DMUtilServer: Original ACL from DM tree node %S: %S", &aURI, &aclPtr);
   983 	RDEBUG8_3("DMUtilServer: Original ACL from DM tree node %S: %S", &aURI, &aclPtr);
   980 #endif
   984 #endif
  1052 #else
  1056 #else
  1053 	HBufC8 * aclStr = acl->GetNodeACLStringL();
  1057 	HBufC8 * aclStr = acl->GetNodeACLStringL();
  1054 	CleanupStack::PushL( aclStr);
  1058 	CleanupStack::PushL( aclStr);
  1055 	RDEBUG8_2("DMUtilServer: New ACL string for node: %S", aclStr);
  1059 	RDEBUG8_2("DMUtilServer: New ACL string for node: %S", aclStr);
  1056 	User::LeaveIfError( iDbSession.Connect() );
  1060 	User::LeaveIfError( iDbSession.Connect() );
       
  1061 	CleanupClosePushL( iDbSession );
  1057 	iDbSession.UpdateAclL( aURI, *aclStr);
  1062 	iDbSession.UpdateAclL( aURI, *aclStr);
  1058 	iDbSession.Close();
  1063 	CleanupStack::PopAndDestroy( ); // iDbSession
  1059 	CleanupStack::PopAndDestroy( aclStr);
  1064 	CleanupStack::PopAndDestroy( aclStr);
  1060 
  1065 
  1061 	CleanupStack::PopAndDestroy( acl);
  1066 	CleanupStack::PopAndDestroy( acl);
  1062 #endif		
  1067 #endif		
  1063 	RDEBUG("DMUtilServer: CACLStorage::UpdateACL - End");
  1068 	RDEBUG("DMUtilServer: CACLStorage::UpdateACL - End");