コード例 #1
0
ファイル: Nntp.cs プロジェクト: ArsenShnurkov/beagle-1
		// FIXME: This need some more info
		private Indexable NntpMessageToIndexable (TB.NntpMessage message)
		{
			Indexable indexable;
			
			indexable = new Indexable (message.Uri);
			indexable.HitType = "MailMessage";
			indexable.MimeType = "message/rfc822";
			indexable.Timestamp = DateTime.Parse (message.GetString ("date")).ToUniversalTime ();
			
			indexable.AddProperty (Property.NewKeyword ("fixme:client", "thunderbird"));
			indexable.AddProperty (Property.NewUnsearched ("fixme:fullyIndexed", message.GetBool ("FullIndex")));
			indexable.AddProperty (Property.NewDate ("fixme:indexDateTime", DateTime.UtcNow));
			
			string subject = GMime.Utils.HeaderDecodePhrase (message.GetString ("subject"));
			indexable.AddProperty (Property.New ("dc:title", subject));
			
			return indexable;
		}
コード例 #2
0
ファイル: Mail.cs プロジェクト: ArsenShnurkov/beagle-1
		private Indexable MailToIndexable (TB.Mail mail)
		{
			Indexable indexable;
			GMime.Message message = mail.Message;
			FullIndex = mail.GetBool ("FullIndex"); // Make sure this is up to date
			string mailbox = (MailboxName != null ? MailboxName : (string) mail.GetString ("mailbox"));
			
			indexable = NewIndexable (mail.Uri, message.Date.ToUniversalTime (), "MailMessage");
			indexable.MimeType = "message/rfc822";
			indexable.CacheContent = true;
			indexable.AddProperty (Property.NewKeyword ("fixme:folder", mailbox));
			indexable.SetBinaryStream (message.Stream);
			
			if (mail.GetBool ("FullIndex"))
				indexable.ContentUri = UriFu.PathToFileUri (Thunderbird.GetFullyIndexableFile (DbFile));
			
			message.Dispose ();			

			return indexable;
		}