sysstatemgmt/systemstatemgr/cmd/src/ssmpublishsystemstateinfo.cpp
changeset 0 4e1aa6a622a0
equal deleted inserted replaced
-1:000000000000 0:4e1aa6a622a0
       
     1 // Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
       
     2 // All rights reserved.
       
     3 // This component and the accompanying materials are made available
       
     4 // under the terms of "Eclipse Public License v1.0"
       
     5 // which accompanies this distribution, and is available
       
     6 // at the URL "http://www.eclipse.org/legal/epl-v10.html".
       
     7 //
       
     8 // Initial Contributors:
       
     9 // Nokia Corporation - initial contribution.
       
    10 //
       
    11 // Contributors:
       
    12 //
       
    13 // Description:
       
    14 //
       
    15 
       
    16 #include <ssm/ssmpublishsystemstateinfo.h>
       
    17 
       
    18 /** 
       
    19 Constructor
       
    20 */
       
    21 EXPORT_C TSsmPublishSystemStateInfo::TSsmPublishSystemStateInfo()
       
    22 	: iState(),
       
    23 #ifndef SYMBIAN_ENABLE_SPLIT_HEADERS	
       
    24 	iDirection(ETraverseDefault),
       
    25 #else
       
    26 	iDirection(ESsmTraverseDefault),
       
    27 #endif //SYMBIAN_ENABLE_SPLIT_HEADERS
       
    28 	iRetries(0)
       
    29 	{
       
    30 	}
       
    31 
       
    32 /** 
       
    33 Overload = operator
       
    34 */
       
    35 EXPORT_C TSsmPublishSystemStateInfo& TSsmPublishSystemStateInfo::operator=(const TSsmPublishSystemStateInfo &aInfo)
       
    36 	{
       
    37 	// protect against self assignment
       
    38 	if( &aInfo != this)
       
    39 		{
       
    40 		Set(aInfo.State(), aInfo.Direction(), aInfo.Retries());
       
    41 		}
       
    42 
       
    43 	return (*this);
       
    44 	}
       
    45 
       
    46 /** 
       
    47 @return System State
       
    48 */
       
    49 //TDmDomainState TSsmPublishSystemStateInfo::State() const
       
    50 EXPORT_C TSsmState TSsmPublishSystemStateInfo::State() const
       
    51 	{
       
    52 	return iState;
       
    53 	}
       
    54 
       
    55 /** 
       
    56 @return Direction we are traversing the State tree
       
    57 */
       
    58 #ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
       
    59 EXPORT_C TDmTraverseDirection TSsmPublishSystemStateInfo::Direction() const
       
    60 #else
       
    61 EXPORT_C TSsmDmTraverseDirection TSsmPublishSystemStateInfo::Direction() const
       
    62 #endif //SYMBIAN_ENABLE_SPLIT_HEADERS
       
    63 	{
       
    64 	return iDirection;
       
    65 	}
       
    66 
       
    67 /** 
       
    68 @return Number of retries on failure
       
    69 */
       
    70 EXPORT_C TInt16 TSsmPublishSystemStateInfo::Retries() const
       
    71 	{
       
    72 	return iRetries;
       
    73 	}
       
    74 
       
    75 /** 
       
    76 Set System State info
       
    77 @param aState					The state to transition into
       
    78 @param aDirection				The direction we are traversing the State tree
       
    79 @param aRetries					Number of retires on failure
       
    80 @param aSeverity				The severity of the action
       
    81 @param aTransitionFailurePolicy	The policy to take on failure
       
    82 */
       
    83 //void TSsmPublishSystemStateInfo::SetL(TDmDomainId aDomain, TDmDomainState aState, TDmTraverseDirection aDirection, TInt aRetries, TCmdErrorSeverity aSeverity, TDmTransitionFailurePolicy aTransitionFailurePolicy)
       
    84 #ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
       
    85 EXPORT_C void TSsmPublishSystemStateInfo::Set(const TSsmState& aState, TDmTraverseDirection aDirection, TInt16 aRetries)
       
    86 #else
       
    87 EXPORT_C void TSsmPublishSystemStateInfo::Set(const TSsmState& aState, TSsmDmTraverseDirection aDirection, TInt16 aRetries)
       
    88 #endif //SYMBIAN_ENABLE_SPLIT_HEADERS
       
    89 
       
    90 	{
       
    91 	iState = aState;
       
    92 	iDirection = aDirection;
       
    93 	iRetries = aRetries;
       
    94 	}
       
    95 
       
    96 /** 
       
    97 Clear System State info contents and reset to default values
       
    98 */
       
    99 EXPORT_C void TSsmPublishSystemStateInfo::Clear()
       
   100 	{
       
   101 	iState.SetFromInt(0);
       
   102 #ifndef SYMBIAN_ENABLE_SPLIT_HEADERS
       
   103 	iDirection = ETraverseDefault;
       
   104 #else
       
   105 	iDirection = ESsmTraverseDefault;
       
   106 #endif //SYMBIAN_ENABLE_SPLIT_HEADERS
       
   107 	iRetries = 0;
       
   108 	}
       
   109