Ejemplo n.º 1
0
        public static RecognizedObjectResource Map(this RecognizedObjectResource recognizedObject, ContentResource content)
        {
            if (recognizedObject == null)
            {
                return(null);
            }

            recognizedObject.Content = content;

            return(recognizedObject);
        }
Ejemplo n.º 2
0
        public void Cache(RecognizedObjectResource recognizedResource)
        {
            var recognizedModel = new RecognizedObject()
            {
                Id        = recognizedResource.Id,
                Name      = recognizedResource.Name,
                ContentId = recognizedResource.Content.Id,
                Modified  = recognizedResource.Modified
            };
            var contentModel = new Content()
            {
                Id            = recognizedResource.Content.Id,
                Name          = recognizedResource.Content.Name,
                AssetBundleId = recognizedResource.Content.AssetBundle.Id,
                DllId         = recognizedResource.Content.Dll.Id,
                Modified      = recognizedResource.Content.Modified
            };

            if (recognizedResource.Content.Dll != null)
            {
                contentModel.DllId = recognizedResource.Content.Dll.Id;
            }
            var assetBundleModel = new AssetBundle()
            {
                Id       = recognizedResource.Content.AssetBundle.Id,
                Name     = recognizedResource.Content.AssetBundle.Name,
                Modified = recognizedResource.Content.AssetBundle.Modified
            };

            Dll dll = null;

            if (recognizedResource.Content?.Dll != null)
            {
                dll = new Dll()
                {
                    Id       = recognizedResource.Content.Dll.Id,
                    Name     = recognizedResource.Content.Dll.Name,
                    Modified = recognizedResource.Content.Dll.Modified
                };
            }

            using (var con = Connection)
            {
                con.Execute(recognizedObjectTable.InsertOrReplace(recognizedModel));
                con.Execute(contentTable.InsertOrReplace(contentModel));
                con.Execute(assetBundleTable.InsertOrReplace(assetBundleModel));

                if (dll != null)
                {
                    con.Execute(dllTable.InsertOrReplace(dll));
                }
            }
        }