Ejemplo n.º 1
0
        public override PsCameraData GetCamera(uint modelId, string platform, ListPlatformData list, TreePlatformData tree, string productName)
        {
            var camera = base.GetCamera(modelId, platform, list, tree, productName);

            camera.Alt = GetAlt(platform, tree.Alt, productName);
            return(camera);
        }
        public override EosCameraModelData GetModel(string platform, string[] names, ListPlatformData list, TreePlatformData tree, string productName)
        {
            var model = base.GetModel(platform, names, list, tree, productName);

            model.Versions = VersionProvider.GetVersions(productName, list, tree);
            return(model);
        }
Ejemplo n.º 3
0
 private CameraData GetOrAddCamera(uint modelId, string platform, ListPlatformData list, TreePlatformData tree, IDictionary <uint, CameraData> cameras, string productName)
 {
     if (!cameras.TryGetValue(modelId, out CameraData camera))
     {
         camera = CameraProvider.GetCamera(modelId, platform, list, tree, productName);
         cameras.Add(modelId, camera);
     }
     return(camera);
 }
Ejemplo n.º 4
0
 public CameraModelData GetModel(string platform, string[] names, ListPlatformData list, TreePlatformData tree, string productName)
 {
     ModelValidator.Validate(platform, list, tree, productName);
     return(new CameraModelData
     {
         Platform = platform,
         Names = names,
     });
 }
 public virtual TModel GetModel(string platform, string[] names, ListPlatformData list, TreePlatformData tree, string productName)
 {
     ModelValidator.Validate(platform, list, tree, productName);
     return(new TModel
     {
         Platform = platform,
         Names = names,
     });
 }
Ejemplo n.º 6
0
 public virtual TCamera GetCamera(uint modelId, string platform, ListPlatformData list, TreePlatformData tree, string productName)
 {
     return(new TCamera
     {
         Models = new CameraModelData[0],
         Boot = GetBoot(modelId, productName),
         Card = GetCard(modelId, tree.MultiCard, productName),
     });
 }
Ejemplo n.º 7
0
        private void AddModel(IDictionary <uint, CameraData> cameras, IDictionary <string, PlatformData> platforms, IDictionary <string, TreePlatformData> treeCameras,
                              string key, ListPlatformData list, string productName)
        {
            var platform = PlatformProvider.GetPlatform(key, platforms, productName);
            var tree     = PlatformProvider.GetTree(key, treeCameras, productName);
            var modelId  = Convert.ToUInt32(platform.ModelId, 16);
            var camera   = GetOrAddCamera(modelId, key, list, tree, cameras, productName);
            var model    = ModelProvider.GetModel(key, platform.Names, list, tree, productName);

            camera.Models = camera.Models.Concat(new[] { model }).ToArray();
        }
        public virtual TCamera GetCamera(uint modelId, string platform, ListPlatformData list, TreePlatformData tree, string productName)
        {
            var categoryName = ProductProvider.GetCategoryName(productName);

            return(new TCamera
            {
                Models = new TModel[0],
                Encoding = GetEncoding(platform, tree.Encoding, categoryName),
                Boot = GetBoot(modelId, productName),
                Card = GetCard(modelId, tree.Card, productName),
            });
        }
Ejemplo n.º 9
0
        public IDictionary <string, VersionData> GetVersions(string productName, ListPlatformData list, TreePlatformData tree)
        {
            var versions = new SortedDictionary <string, VersionData>();

            foreach (var kvp in list.Revisions)
            {
                var version = GetVersion(kvp.Key, kvp.Value, list, tree);
                if (version != null)
                {
                    var versionKey = GetVersionKey(kvp.Key);
                    versions.Add(versionKey, version);
                }
            }
            return(versions);
        }
Ejemplo n.º 10
0
        public IDictionary <string, RevisionData> GetRevisions(ListPlatformData list, TreePlatformData tree)
        {
            var revisions = new SortedDictionary <string, RevisionData>();

            foreach (var kvp in list.Revisions)
            {
                var revision = GetRevision(kvp.Key, kvp.Value, list);
                if (revision != null)
                {
                    var revisionKey = GetRevisionKey(kvp.Key);
                    revisions.Add(revisionKey, revision);
                }
            }
            return(revisions);
        }
        public void Validate(string platform, ListPlatformData list, TreePlatformData tree)
        {
            if (list?.Revisions == null)
            {
                throw new InvalidOperationException($"{platform}: null list/revisions");
            }

            if (tree?.Revisions == null)
            {
                throw new InvalidOperationException($"{platform}: null tree/revisions");
            }

            foreach (var kvp in tree.Revisions)
            {
                Validate(kvp, platform, list);
            }

            foreach (var kvp in list.Revisions)
            {
                Validate(kvp, platform, tree);
            }
        }
Ejemplo n.º 12
0
        private VersionData GetVersion(string version, ListRevisionData listRevision, ListPlatformData list, TreePlatformData tree)
        {
            var key = listRevision.Source?.Revision ?? version;

            if (!list.Revisions.ContainsKey(key))
            {
                return(null);
            }

            return(GetVersion(version));
        }
Ejemplo n.º 13
0
        protected override RevisionData GetRevision(string revision, ListRevisionData listRevision, ListPlatformData list)
        {
            var key = listRevision.Source?.Revision ?? revision;

            if (!list.Revisions.ContainsKey(key))
            {
                return(null);
            }

            return(GetRevision(key));
        }
Ejemplo n.º 14
0
 protected abstract RevisionData GetRevision(string revision, ListRevisionData listRevision, ListPlatformData list);
Ejemplo n.º 15
0
 protected override RevisionData GetRevision(string revision, ListRevisionData listRevision, ListPlatformData list)
 {
     return(GetRevision(revision));
 }
Ejemplo n.º 16
0
 public void Validate(string platform, ListPlatformData list, TreePlatformData tree, string productName)
 {
     GetInnerProvider(productName).Validate(platform, list, tree);
 }
        private void Validate(KeyValuePair <string, TreeRevisionData> kvp, string platform, ListPlatformData list)
        {
            var revision = kvp.Key;

            if (!list.Revisions.ContainsKey(revision))
            {
                OnListRevisionMissing(platform, revision);
            }
        }
 public IDictionary <string, RevisionData> GetRevisions(string productName, ListPlatformData list, TreePlatformData tree)
 {
     return(GetInnerProvider(productName).GetRevisions(list, tree));
 }