Esempio n. 1
0
		public Notification( XmlNode notifyNode )
		{
			sequenceToken = XmlUtil.AttributeValue( 
				notifyNode.Attributes, 
				ZimbraService.A_NOTIFY_SEQUENCE );

			XmlNodeList newMsgNodes = notifyNode.SelectNodes( 
				ZimbraService.NS_PREFIX + ":" + ZimbraService.E_CREATED + "/" + 
				ZimbraService.NS_PREFIX + ":" + ZimbraService.E_MSG,
				XmlUtil.NamespaceManager );

			createdMessages = new MessageSummary[ newMsgNodes.Count ];
			for( int i = 0; i < newMsgNodes.Count; i++ )
			{
				MessageSummary s = new MessageSummary();
				
				XmlNode msgNode = newMsgNodes[i];
				s.itemId = XmlUtil.AttributeValue( msgNode.Attributes, ZimbraService.A_ID );
				s.parentFolderId = XmlUtil.AttributeValue( msgNode.Attributes, ZimbraService.A_PARENT_FOLDER_ID );
			
				XmlNode emailNode = msgNode.SelectSingleNode( ZimbraService.NS_PREFIX + ":" + ZimbraService.E_EMAIL, XmlUtil.NamespaceManager );
				if( emailNode != null ) 
				{
					s.email_display = XmlUtil.AttributeValue( emailNode.Attributes, ZimbraService.A_EMAIL_DISPLAY );
					s.email_address = XmlUtil.AttributeValue( emailNode.Attributes, ZimbraService.A_EMAIL_ADDRESS );
					s.email_personal_name = XmlUtil.AttributeValue( emailNode.Attributes, ZimbraService.A_EMAIL_PERSONAL_NAME );
				}

				XmlNode subjectNode = msgNode.SelectSingleNode( ZimbraService.NS_PREFIX + ":" + ZimbraService.E_SUBJECT, XmlUtil.NamespaceManager );
				if( subjectNode != null )
				{
					s.subject = subjectNode.InnerText;
				}

				XmlNode fragmentNode = msgNode.SelectSingleNode( ZimbraService.NS_PREFIX + ":" + ZimbraService.E_FRAGMENT, XmlUtil.NamespaceManager );
				if( fragmentNode != null )
				{
					s.fragment = fragmentNode.InnerText;
				}

				createdMessages[i] = s;
			}
		}