/// <summary> /// Verify that evidence being stored in this descriptor is of the correct type /// </summary> private bool CheckEvidenceType(EvidenceBase evidence) { Contract.Assert(evidence != null); ILegacyEvidenceAdapter legacyAdapter = evidence as ILegacyEvidenceAdapter; Type storedType = legacyAdapter == null?evidence.GetType() : legacyAdapter.EvidenceType; return(m_evidenceType == null || m_evidenceType.IsAssignableFrom(storedType)); }
private static object UnwrapEvidence(EvidenceBase evidence) { ILegacyEvidenceAdapter adapter = evidence as ILegacyEvidenceAdapter; if (adapter != null) { return(adapter.EvidenceObject); } return(evidence); }
private static Type GetEvidenceIndexType(EvidenceBase evidence) { ILegacyEvidenceAdapter adapter = evidence as ILegacyEvidenceAdapter; if (adapter != null) { return(adapter.EvidenceType); } return(evidence.GetType()); }