public BriefItemInfo Get_Item_Brief(string BibID, string VID, bool UseCache, Custom_Tracer Tracer)
{
// Add a beginning trace
Tracer.Add_Trace("SobekEngineClient_ItemEndpoints.Get_Item_Brief", "Get brief item information by bibid/vid");
// Look in the cache
if ((Config.UseCache) && (UseCache))
{
BriefItemInfo fromCache = CachedDataManager.Items.Retrieve_Brief_Digital_Resource_Object(BibID, VID, Tracer);
if (fromCache != null)
{
Tracer.Add_Trace("SobekEngineClient_WebContentServices.Get_Item_Brief", "Found brief item in the local cache");
return fromCache;
}
}
// Get the endpoint
MicroservicesClient_Endpoint endpoint = GetEndpointConfig("Items.GetItemBrief", Tracer);
// Format the URL
string url = String.Format(endpoint.URL, BibID, VID);
// Call out to the endpoint and deserialize the object
BriefItemInfo returnValue = Deserialize<BriefItemInfo>(url, endpoint.Protocol, Tracer);
// Add to the local cache
if ((Config.UseCache) && (UseCache) && (returnValue != null))
{
Tracer.Add_Trace("SobekEngineClient_WebContentServices.Get_Item_Brief", "Store brief item in the local cache");
CachedDataManager.Items.Store_Brief_Digital_Resource_Object(BibID, VID, returnValue, Tracer);
}
// Return the object
return returnValue;
}