C# Class Smrf.SocialNetworkLib.EmailNetworkAnalyzer

Analyzes a user's email social network.
Use one of the AnalyzeEmailNetwork() overloads to synchronously analyze a user's email social network, or use to do it asynchronously.
Inheritance: Object
Show file Open project: 2014-sed-team3/term-project Class Usage Examples

Protected Properties

Property Type Description
m_oBackgroundWorker System.ComponentModel.BackgroundWorker

Private Properties

Property Type Description
AssertValid void

Public Methods

Method Description
AnalyzeEmailNetwork ( ) : Smrf.SocialNetworkLib.EmailParticipantPair[]
AnalyzeEmailNetwork ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable hasCc, Nullable hasBcc, Nullable isReplyFromParticipant1, System.Boolean useCcForEdgeWeights, System.Boolean useBccForEdgeWeights ) : Smrf.SocialNetworkLib.EmailParticipantPair[]
AnalyzeEmailNetworkAsync ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable hasCc, Nullable hasBcc, Nullable isReplyFromParticipant1, System.Boolean useCcForEdgeWeights, System.Boolean useBccForEdgeWeights ) : void
CancelAsync ( ) : void
EmailNetworkAnalyzer ( ) : System

Initializes a new instance of the EmailNetworkAnalyzer class.

Protected Methods

Method Description
AnalyzeEmailNetworkInternal ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable hasCc, Nullable hasBcc, Nullable isReplyFromParticipant1, System.Boolean useCcForEdgeWeights, System.Boolean useBccForEdgeWeights, BackgroundWorker backgroundWorker, DoWorkEventArgs doWorkEventArgs ) : Smrf.SocialNetworkLib.EmailParticipantPair[]
AnalyzeEmailNetworkInternal ( System.Data.OleDb.OleDbDataReader oDataReader, System.Boolean bUseCcForEdgeWeights, System.Boolean bUseBccForEdgeWeights, BackgroundWorker oBackgroundWorker, DoWorkEventArgs oDoWorkEventArgs ) : Smrf.SocialNetworkLib.EmailParticipantPair[]
AnalyzeOneEmail ( Object oFromField, Object oToField, Object oCcField, Object oBccField, System.Boolean bUseCcForEdgeWeights, System.Boolean bUseBccForEdgeWeights, Int32>.Dictionary oAggregatedDictionary ) : void
AnalyzeOneEmailField ( String sFrom, Object oField, Int32>.Dictionary oPerEmailDictionary, Int32>.Dictionary oAggregatedDictionary ) : void
AppendParticipantClauseToQuery ( String sEscapedParticipant, IncludedIn eIncludedIn, IncludedIn eFlagToCheck, StringBuilder oStringBuilder, System.Boolean &bParticipantClauseAppended ) : void
BackgroundWorker_DoWork ( object sender, DoWorkEventArgs e ) : void
BackgroundWorker_RunWorkerCompleted ( object sender, RunWorkerCompletedEventArgs e ) : void
CheckAnalyzeMethodArgument ( String sArgument, String sParameterName ) : void
CheckAnalyzeMethodArguments ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable isReplyFromParticipant1 ) : void
CreateQuery ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable hasCc, Nullable hasBcc, Nullable isReplyFromParticipant1 ) : String
EscapeStringForContains ( String sString ) : String
EscapeStringForEquals ( String sString ) : String
FormatTime ( System.DateTime oTime ) : String
GetDataReader ( String sQuery ) : System.Data.OleDb.OleDbDataReader
KeyToParticipants ( String sKey, String &sParticipant1, String &sParticipant2 ) : void
ParticipantsToKey ( String sParticipant1, String sParticipant2 ) : String

Private Methods

Method Description
AssertValid ( ) : void

Method Details

AnalyzeEmailNetwork() public method

public AnalyzeEmailNetwork ( ) : Smrf.SocialNetworkLib.EmailParticipantPair[]
return Smrf.SocialNetworkLib.EmailParticipantPair[]

AnalyzeEmailNetwork() public method

public AnalyzeEmailNetwork ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable hasCc, Nullable hasBcc, Nullable isReplyFromParticipant1, System.Boolean useCcForEdgeWeights, System.Boolean useBccForEdgeWeights ) : Smrf.SocialNetworkLib.EmailParticipantPair[]
participantsCriteria EmailParticipantCriteria
startTime Nullable
endTime Nullable
subjectText String
bodyText String
folder String
minimumSize Nullable
maximumSize Nullable
attachmentFilter Nullable
hasCc Nullable
hasBcc Nullable
isReplyFromParticipant1 Nullable
useCcForEdgeWeights System.Boolean
useBccForEdgeWeights System.Boolean
return Smrf.SocialNetworkLib.EmailParticipantPair[]

AnalyzeEmailNetworkAsync() public method

public AnalyzeEmailNetworkAsync ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable hasCc, Nullable hasBcc, Nullable isReplyFromParticipant1, System.Boolean useCcForEdgeWeights, System.Boolean useBccForEdgeWeights ) : void
participantsCriteria EmailParticipantCriteria
startTime Nullable
endTime Nullable
subjectText String
bodyText String
folder String
minimumSize Nullable
maximumSize Nullable
attachmentFilter Nullable
hasCc Nullable
hasBcc Nullable
isReplyFromParticipant1 Nullable
useCcForEdgeWeights System.Boolean
useBccForEdgeWeights System.Boolean
return void

AnalyzeEmailNetworkInternal() protected method

protected AnalyzeEmailNetworkInternal ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable hasCc, Nullable hasBcc, Nullable isReplyFromParticipant1, System.Boolean useCcForEdgeWeights, System.Boolean useBccForEdgeWeights, BackgroundWorker backgroundWorker, DoWorkEventArgs doWorkEventArgs ) : Smrf.SocialNetworkLib.EmailParticipantPair[]
participantsCriteria EmailParticipantCriteria
startTime Nullable
endTime Nullable
subjectText String
bodyText String
folder String
minimumSize Nullable
maximumSize Nullable
attachmentFilter Nullable
hasCc Nullable
hasBcc Nullable
isReplyFromParticipant1 Nullable
useCcForEdgeWeights System.Boolean
useBccForEdgeWeights System.Boolean
backgroundWorker System.ComponentModel.BackgroundWorker
doWorkEventArgs System.ComponentModel.DoWorkEventArgs
return Smrf.SocialNetworkLib.EmailParticipantPair[]

AnalyzeEmailNetworkInternal() protected method

protected AnalyzeEmailNetworkInternal ( System.Data.OleDb.OleDbDataReader oDataReader, System.Boolean bUseCcForEdgeWeights, System.Boolean bUseBccForEdgeWeights, BackgroundWorker oBackgroundWorker, DoWorkEventArgs oDoWorkEventArgs ) : Smrf.SocialNetworkLib.EmailParticipantPair[]
oDataReader System.Data.OleDb.OleDbDataReader
bUseCcForEdgeWeights System.Boolean
bUseBccForEdgeWeights System.Boolean
oBackgroundWorker System.ComponentModel.BackgroundWorker
oDoWorkEventArgs System.ComponentModel.DoWorkEventArgs
return Smrf.SocialNetworkLib.EmailParticipantPair[]

AnalyzeOneEmail() protected method

protected AnalyzeOneEmail ( Object oFromField, Object oToField, Object oCcField, Object oBccField, System.Boolean bUseCcForEdgeWeights, System.Boolean bUseBccForEdgeWeights, Int32>.Dictionary oAggregatedDictionary ) : void
oFromField Object
oToField Object
oCcField Object
oBccField Object
bUseCcForEdgeWeights System.Boolean
bUseBccForEdgeWeights System.Boolean
oAggregatedDictionary Int32>.Dictionary
return void

AnalyzeOneEmailField() protected method

protected AnalyzeOneEmailField ( String sFrom, Object oField, Int32>.Dictionary oPerEmailDictionary, Int32>.Dictionary oAggregatedDictionary ) : void
sFrom String
oField Object
oPerEmailDictionary Int32>.Dictionary
oAggregatedDictionary Int32>.Dictionary
return void

AppendParticipantClauseToQuery() protected method

protected AppendParticipantClauseToQuery ( String sEscapedParticipant, IncludedIn eIncludedIn, IncludedIn eFlagToCheck, StringBuilder oStringBuilder, System.Boolean &bParticipantClauseAppended ) : void
sEscapedParticipant String
eIncludedIn IncludedIn
eFlagToCheck IncludedIn
oStringBuilder StringBuilder
bParticipantClauseAppended System.Boolean
return void

BackgroundWorker_DoWork() protected method

protected BackgroundWorker_DoWork ( object sender, DoWorkEventArgs e ) : void
sender object
e System.ComponentModel.DoWorkEventArgs
return void

BackgroundWorker_RunWorkerCompleted() protected method

protected BackgroundWorker_RunWorkerCompleted ( object sender, RunWorkerCompletedEventArgs e ) : void
sender object
e System.ComponentModel.RunWorkerCompletedEventArgs
return void

CancelAsync() public method

public CancelAsync ( ) : void
return void

CheckAnalyzeMethodArgument() protected method

protected CheckAnalyzeMethodArgument ( String sArgument, String sParameterName ) : void
sArgument String
sParameterName String
return void

CheckAnalyzeMethodArguments() protected method

protected CheckAnalyzeMethodArguments ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable isReplyFromParticipant1 ) : void
participantsCriteria EmailParticipantCriteria
startTime Nullable
endTime Nullable
subjectText String
bodyText String
folder String
minimumSize Nullable
maximumSize Nullable
attachmentFilter Nullable
isReplyFromParticipant1 Nullable
return void

CreateQuery() protected method

protected CreateQuery ( EmailParticipantCriteria participantsCriteria, Nullable startTime, Nullable endTime, String subjectText, String bodyText, String folder, Nullable minimumSize, Nullable maximumSize, Nullable attachmentFilter, Nullable hasCc, Nullable hasBcc, Nullable isReplyFromParticipant1 ) : String
participantsCriteria EmailParticipantCriteria
startTime Nullable
endTime Nullable
subjectText String
bodyText String
folder String
minimumSize Nullable
maximumSize Nullable
attachmentFilter Nullable
hasCc Nullable
hasBcc Nullable
isReplyFromParticipant1 Nullable
return String

EmailNetworkAnalyzer() public method

Initializes a new instance of the EmailNetworkAnalyzer class.
public EmailNetworkAnalyzer ( ) : System
return System

EscapeStringForContains() protected method

protected EscapeStringForContains ( String sString ) : String
sString String
return String

EscapeStringForEquals() protected method

protected EscapeStringForEquals ( String sString ) : String
sString String
return String

FormatTime() protected method

protected FormatTime ( System.DateTime oTime ) : String
oTime System.DateTime
return String

GetDataReader() protected method

protected GetDataReader ( String sQuery ) : System.Data.OleDb.OleDbDataReader
sQuery String
return System.Data.OleDb.OleDbDataReader

KeyToParticipants() protected method

protected KeyToParticipants ( String sKey, String &sParticipant1, String &sParticipant2 ) : void
sKey String
sParticipant1 String
sParticipant2 String
return void

ParticipantsToKey() protected method

protected ParticipantsToKey ( String sParticipant1, String sParticipant2 ) : String
sParticipant1 String
sParticipant2 String
return String

Property Details

m_oBackgroundWorker protected property

protected BackgroundWorker,System.ComponentModel m_oBackgroundWorker
return System.ComponentModel.BackgroundWorker