Opened 14 years ago
Last modified 14 years ago
#424 closed enhancement
Ampliación de funcionalidad métodos Get de MMS::Container: si no existe el Objeto en memoria, cargarlo de repositorio — at Initial Version
Reported by: | atorre | Owned by: | Pedro Gea |
---|---|---|---|
Priority: | critical | Milestone: | Release 0.6 |
Component: | Persistence | Keywords: | Container, métodos Get, Load, Repository |
Cc: |
Description
Hola MMS,
creo que se podría ampliar la funcionalidad de los métodos Get del contenedor de MMS. Si no existe en el contenedor, lo podría intentar cargar de un repositorio (¿o un conjunto de repositorios ordenados?) que se pasaría como argumento adicional en el Anything info.
Sigue un ejemplo de una función que lo hace:
NameBlock GetDataSet_INELO(Anything info)
INELO: If Not Exists, LOad
{
Real dsFound = MMS::Container::FindDataSet(info);
If(dsFound, MMS::Container::GetDataSet(dsFound),
{
WriteLn("GetDataSet_INELO:\nDataSet "<< infoDataSetName? +" not loaded", "W");
NameBlock repo = infoRepository?;
repo::LoadDataSet(info)
})
};
MMS::@DataSet Prueba = GetDataSet_INELO(
[[
Text DataSetName = "<DATA_SET_NAME>",
Text DataSetVersion = "<DATA_SET_VERSION>",
MMS::@Repository Repository = KNOWN_REPOSITORY_OBJECT
]]);