private CombinedBarcodeResponseItem FormatViEntry(VapiBibRecord record, string barcode)
        {
            if (record == null)
            {
                return(new CombinedBarcodeResponseItem());
            }
            var item = record.items.FirstOrDefault(x => x.barcode == barcode);

            if (item == null)
            {
                return(new CombinedBarcodeResponseItem());
            }
            var tcEntry = new CombinedBarcodeResponseItem
            {
                Origin         = "Voyager",
                Author         = record.author,
                BoxNumber      = item.itemenum,
                CallNumber     = item.callno,
                Location       = item.locname,
                ResourceTitle  = record.title,
                ResourceId     = record.bibid,
                Handle         = String.Format("http://hdl.handle.net/10079/bibid/{0}", record.bibid),
                Restriction    = item.itemstat,
                SeriesDivision = item.itemchron,
                SeriesTitle    = ""
            };

            return(tcEntry);
        }
        private async Task <CombinedBarcodeResponseItem> FormatTcEntryAsync(TopContainer container,
                                                                            ArchivesSpaceService activeService)
        {
            if (container == null)
            {
                return(new CombinedBarcodeResponseItem());
            }
            var location = await GetContainerLocationDisplayString(container, activeService);

            var resourceManager = new ArchivesSpaceResourceManager(activeService);

            var resource = await resourceManager.GetResourceByIdAsync(container.Collection.First().RefStrippedId);

            var hasSeries      = container.Series.Count > 0;
            var seriesDivision = hasSeries ? container.Series.First().Identifier.FormatSeriesDivision() : "";
            var seriesTitle    = hasSeries ? container.Series.First().DisplayString : "";
            var tcEntry        = new CombinedBarcodeResponseItem
            {
                Origin         = "ArchivesSpace",
                Author         = "",
                BoxNumber      = Helpers.FormatBoxText(container.Indicator),
                CallNumber     = Helpers.FormatCallNumber(container.Collection.First().Identifier),
                Location       = location,
                ResourceTitle  = container.Collection.First().DisplayString,
                ResourceId     = container.Collection.First().RefStrippedId,
                Handle         = resource.EadLocation, //This seems to be null pretty often even if EadId (not a URL) is not
                Restriction    = (container.Restricted ? "Y" : "N"),
                SeriesDivision = seriesDivision,
                SeriesTitle    = seriesTitle
            };

            return(tcEntry);
        }