public MassTransitMongoDbConventions(ConventionFilter filter = default(ConventionFilter)) { var conventionFilter = filter ?? IsMassTransitClass; var convention = new ConventionPack { new CamelCaseElementNameConvention(), new IgnoreExtraElementsConvention(true), new SagaConvention(), new MemberDefaultValueConvention(typeof(Guid), Guid.Empty) }; ConventionRegistry.Register("MassTransitConventions", convention, type => conventionFilter(type)); RegisterClass <RoutingSlipDocument>(x => x.TrackingNumber); RegisterClass <ExceptionInfoDocument>(); RegisterClass <ActivityExceptionDocument>(); RegisterClass <HostDocument>(); RegisterClass <RoutingSlipEventDocument>(); RegisterClass <RoutingSlipActivityCompensatedDocument>(); RegisterClass <RoutingSlipActivityCompensationFailedDocument>(); RegisterClass <RoutingSlipActivityCompletedDocument>(); RegisterClass <RoutingSlipActivityFaultedDocument>(); RegisterClass <RoutingSlipCompensationFailedDocument>(); RegisterClass <RoutingSlipCompletedDocument>(); RegisterClass <RoutingSlipFaultedDocument>(); RegisterClass <RoutingSlipRevisedDocument>(); RegisterClass <RoutingSlipTerminatedDocument>(); }
public bool IsMatch(string propertyName, Type type) { switch (ConventionFilterType) { case ConventionFilterType.StartsWith: if (type == Type && propertyName.ToLowerInvariant().StartsWith(ConventionFilter.ToLowerInvariant())) { return(true); } break; case ConventionFilterType.EndsWith: if (type == Type && propertyName.ToLowerInvariant().EndsWith(ConventionFilter.ToLowerInvariant())) { return(true); } break; case ConventionFilterType.Equals: if (type == Type && propertyName.ToLowerInvariant() == ConventionFilter.ToLowerInvariant()) { return(true); } break; default: if (type == Type && propertyName.ToLowerInvariant().Contains(ConventionFilter.ToLowerInvariant())) { return(true); } break; } return(false); }