public static Caracteristica Crear(IPropiedad propiedad) { Caracteristica caracteristica; if (propiedad.Cardinalidad >= Cardinalidad.Cero_Muchos) { caracteristica = _fabrica[typeof(IColeccion)].Invoke(propiedad); } else if (propiedad.Tipo.EsTipoDeDato) { caracteristica = _fabrica[TipoHelper.ObtenerType(propiedad.Tipo)].Invoke(propiedad); } else { caracteristica = _fabrica[typeof(IObjetoDatos)].Invoke(propiedad); } return(caracteristica); }
public static void Leer(ILector lector, IObjetoDatos od, IPropiedad propiedad) { _delegados[TipoHelper.ObtenerType(propiedad.Tipo)].Invoke(lector, od, propiedad); }
private static void ConstruirAtributo(IObjetoDatos od, IPropiedad propiedad) { _delegados[TipoHelper.ObtenerType(propiedad.Tipo)].Invoke(od, propiedad); }
public static void Escribir(IEscritor escritor, IObjetoDatos od, IPropiedad propiedad) { _delegados[TipoHelper.ObtenerType(propiedad.Tipo)].Invoke(escritor, od, propiedad); }