Esempio n. 1
0
        /// <summary>
        /// Gets a list of the available object ID's managed by the repository
        /// </summary>
        /// <returns>object ids</returns>
        public IList <StorableItemMetadata <T> > GetIds()
        {
            var result = new List <StorableItemMetadata <T> >();
            var files  = GetFiles();

            foreach (var name in files.FileNames)
            {
                var file = new FileInfo(name);

                if (mode == FileMode.DirPerFile)
                {
                    result.Add(
                        new StorableItemMetadata <T>
                    {
                        Id     = (new DirectoryInfo(PathFunctions.GetDirectoryName(name))).Name,
                        Loaded = false,
                        Object = null,
                        Uri    = name
                    });
                }
                else
                {
                    result.Add(
                        new StorableItemMetadata <T>
                    {
                        Id     = PathFunctions.GetFileNameWithoutExtension(name),
                        Loaded = false,
                        Object = null,
                        Uri    = name
                    });
                }
            }

            return(result);
        }
Esempio n. 2
0
        private FileInfo GetFileInfo(string name)
        {
            var files = GetFiles();

            foreach (var fileName in files.FileNames)
            {
                if (mode == FileMode.DirPerFile)
                {
                    if ((new DirectoryInfo(PathFunctions.GetDirectoryName(fileName)).Name.Equals(name)))
                    {
                        return(new FileInfo(fileName));
                    }
                }
                else
                {
                    if (PathFunctions.GetFileNameWithoutExtension(fileName).Equals(name))
                    {
                        return(new FileInfo(fileName));
                    }
                }
            }

            return(null);
        }