public static GrainInterfaceData FromGrainClass(Type grainType) { var gi = new GrainInterfaceData { Type = grainType }; gi.DefineClassNames(false); return(gi); }
public static GrainInterfaceData FromGrainClass(Type grainType, Language language) { if (!TypeUtils.IsConcreteGrainClass(grainType) && !TypeUtils.IsSystemTargetClass(grainType)) { List <string> violations = new List <string> { String.Format("{0} implements IGrain but is not a concrete Grain Class (Hint: Extend the base Grain or Grain<T> class).", grainType.FullName) }; throw new RulesViolationException("Invalid Grain class.", violations); } var gi = new GrainInterfaceData(language) { Type = grainType }; gi.DefineClassNames(false); return(gi); }