コード例 #1
0
        public Album VisitPhotosCreateAlbum(CreateAlbum method, JToken data)
        {
            var album = new Album();

            album.Accept(this.ObjectParser, data["response"]);
            return(album);
        }
コード例 #2
0
 public PhotoFrameApplication(IAlbumRepository albumRepository, IPhotoRepository photoRepository)
 {
     this.createAlbum   = new CreateAlbum(albumRepository);
     this.findDirectory = new FindDirectory(albumRepository, photoRepository);
     this.findAlbums    = new FindAlbums(albumRepository);
     this.findPhotos    = new FindPhotos(photoRepository);
     this.changeAlbum   = new ChangeAlbum(albumRepository, photoRepository);
 }
コード例 #3
0
 public PhotoFrameApplication(IAlbumRepository albumRepository, IPhotoRepository photoRepository, IPhotoFileService photoFileService)
 {
     this.createAlbum     = new CreateAlbum(albumRepository);
     this.searchAlbum     = new SearchAlbum(photoRepository);
     this.searchDirectory = new SearchDirectory(photoRepository, photoFileService);
     this.toggleFavorite  = new ToggleFavorite(photoRepository);
     this.changeAlbum     = new ChangeAlbum(albumRepository, photoRepository);
 }
コード例 #4
0
        public Album Insert(CreateAlbum value)
        {
            using (var tran = db.Database.BeginTransaction(System.Data.IsolationLevel.RepeatableRead))
            {
                if (db.Albums.Any(t => EF.Functions.Like(t.Title, value.Title)))
                {
                    throw new ArgumentException("name must be unique");
                }

                DbGenre genre;
                if (db.Genres.Any(s => EF.Functions.Like(s.Name, value.Genre)))
                {
                    genre = db.Genres.FirstOrDefault(s => EF.Functions.Like(s.Name, value.Genre));
                }
                else
                {
                    var toInsert2 = new DbGenre()
                    {
                        Name = value.Genre
                    };
                    db.Genres.Add(toInsert2);

                    db.SaveChanges();

                    genre = toInsert2;
                }

                DbArtist artist;
                if (db.Artists.Any(s => EF.Functions.Like(s.Name, value.Artist)))
                {
                    artist = db.Artists.FirstOrDefault(s => EF.Functions.Like(s.Name, value.Artist));
                }
                else
                {
                    var toInsert2 = new DbArtist()
                    {
                        Name = value.Artist
                    };
                    db.Artists.Add(toInsert2);

                    db.SaveChanges();

                    artist = toInsert2;
                }

                var toInsert = new DbAlbum()
                {
                    Title = value.Title, ArtistId = artist.Id, GenreId = genre.Id
                };
                db.Albums.Add(toInsert);

                db.SaveChanges();
                tran.Commit();

                return(FindById(toInsert.Id));
            }
        }
コード例 #5
0
 public ActionResult <Album> Create([FromBody] CreateAlbum value)
 {
     try
     {
         var created = repository.Insert(value);
         return(CreatedAtAction(nameof(Get), new { id = created.Id }, created));
     }
     catch (ArgumentException ex)
     {
         return(BadRequest(new { error = ex.Message }));
     }
 }
コード例 #6
0
        public async Task TestImgur()
        {
            string      error       = null;
            Image       urlImage    = null;
            Image       streamImage = null;
            CreateAlbum album       = null;

            try
            {
                urlImage = await imgur.UploadImageAnonymous("https://github.com/fluidicon.png", "name", "title", "description");

                using (Stream ms = ResourceRetriever.GetStream("images/vs-icon.png"))
                {
                    streamImage = await imgur.UploadImageAnonymous(ms, "name", "title", "description");
                }

                bool updated = await imgur.UpdateImageAnonymous(streamImage.Deletehash, "updated title", "a new description");

                //Album
                album = await imgur.CreateAlbumAnonymous(new string[] { streamImage.Deletehash }, "album title", "album description", AlbumPrivacy.Public, AlbumLayout.Horizontal, streamImage.Id);

                bool result = await imgur.UpdateAlbumAnonymous(album.DeleteHash, new string[] { streamImage.Deletehash, urlImage.Deletehash }, "updated album title", "update album description", AlbumPrivacy.Hidden, AlbumLayout.Blog, streamImage.Id);

                bool addImagesResult = await imgur.AddImagesToAlbumAnonymous(album.DeleteHash, new string[] { streamImage.Deletehash, urlImage.Deletehash });

                bool removeImagesResult = await imgur.RemoveImagesFromAlbumAnonymous(album.DeleteHash, new string[] { urlImage.Id });
            }
            catch (Exception e)
            {
                error = e.Message;
            }
            finally
            {
                if (urlImage != null)
                {
                    await imgur.DeleteImageAnonymous(urlImage.Deletehash);
                }

                if (streamImage != null)
                {
                    await imgur.DeleteImageAnonymous(streamImage.Deletehash);
                }

                if (album != null)
                {
                    await imgur.DeleteAlbumAnonymous(album.DeleteHash);
                }
            }

            Assert.IsNull(error, error);
        }
コード例 #7
0
        public async Task TestCreateAlbum()
        {
            var mockHttp = new MockHttpMessageHandler();

            mockHttp.When(HttpMethod.Post, baseUrl + "album")
            .Respond(HttpStatusCode.OK, MediaTypeNames.Application.Json,
                     ResourceRetriever.GetJsonString("responses/create-album-ok.json"));

            imgur = new Imgur(apiKey, mockHttp);

            CreateAlbum album = await imgur.CreateAlbumAnonymous(new string[] { "delete-hash-1" }, "title", "description", AlbumPrivacy.None, AlbumLayout.Blog, "image-id");

            Assert.AreEqual("some-delete-hash", album.DeleteHash);
            Assert.AreEqual("some-id", album.Id);
        }
コード例 #8
0
        public static Album CreateAlbum(IExecuteSystem es, String title, String groupId = null, String descr = null,
                                        String privacyView       = null, String privacyComment = null, Boolean?uploadByAdmins = null,
                                        Boolean?commentsDisabled = null)
        {
            var method = new CreateAlbum
            {
                Title            = title,
                GroupId          = groupId,
                Description      = descr,
                PrivacyView      = privacyView,
                PrivacyComment   = privacyComment,
                UploadByAdmins   = uploadByAdmins,
                CommentsDisabled = commentsDisabled
            };

            return(es.Execute(method));
        }
コード例 #9
0
ファイル: AlbumController.cs プロジェクト: mokingJu/discotek
        // PUT: api/Album/5
        public string Put(string id, [FromBody] CreateAlbum value)
        {
            SqlCommand cmd = new SqlCommand();

            conn.Connectdb("update Album set Id_album=@Id_album, Id_artist=@Id_artist, Id_genre=@Id_genre, Name_album=@Name_album, DateRelease=@DateRelease, Duration_album=@Duration_album, Cover_album=@Cover_album where Id_album='" + id + "'", cmd);
            cmd.Parameters.AddWithValue("@Id_album", value.Id_album);
            cmd.Parameters.AddWithValue("@Id_artist", value.Id_artist);
            cmd.Parameters.AddWithValue("@Id_genre", value.Id_genre);
            cmd.Parameters.AddWithValue("@Name_album", value.Name_album);
            cmd.Parameters.AddWithValue("@DateRelease", value.DateRelease);
            cmd.Parameters.AddWithValue("@Duration_album", value.Duration_album);
            cmd.Parameters.AddWithValue("@Cover_album", value.Cover_album);
            int result = cmd.ExecuteNonQuery();

            if (result > 0)
            {
                return("mise à jour réussie");
            }
            else
            {
                return("echec mise à jour");
            }
        }
コード例 #10
0
ファイル: AlbumController.cs プロジェクト: mokingJu/discotek
        // POST: api/Album
        public string Post([FromBody] CreateAlbum value)
        {
            SqlCommand cmd = new SqlCommand();

            conn.Connectdb("insert into Album(Id_album, Id_artist, Id_genre, Name_album, DateRelease, Duration_album, Cover_album)values(@Id_album, @Id_artist, @Id_genre, @Name_album, @DateRelease, @Duration_album, @Cover_album)", cmd);
            cmd.Parameters.AddWithValue("@Id_album", value.Id_album);
            cmd.Parameters.AddWithValue("@Id_artist", value.Id_artist);
            cmd.Parameters.AddWithValue("@Id_genre", value.Id_genre);
            cmd.Parameters.AddWithValue("@Name_album", value.Name_album);
            cmd.Parameters.AddWithValue("@DateRelease", value.DateRelease);
            cmd.Parameters.AddWithValue("@Duration_album", value.Duration_album);
            cmd.Parameters.AddWithValue("@Cover_album", value.Cover_album);
            conn.Con.Open();
            int result = cmd.ExecuteNonQuery();

            if (result > 0)
            {
                return("insertion réussie");
            }
            else
            {
                return("echec insertion");
            }
        }
コード例 #11
0
 public IActionResult Create(CreateAlbum model)
 {
     return(RedirectToAction("Upload", "Pictures", new { albumTitle = model.Title }));
 }
コード例 #12
0
ファイル: AlbumsController.cs プロジェクト: jvas18/smoos
 public async Task <IActionResult> Post([FromBody] CreateAlbum command)
 {
     return(command == null?
            UnprocessableEntity()
                : Ok(await _mediator.Send(command)));
 }
コード例 #13
0
 public PhotoFrameApplication(IAlbumRepository albumRepository)
 {
     this.createAlbum = new CreateAlbum(albumRepository);
 }
コード例 #14
0
ファイル: VkMethodVisitor.cs プロジェクト: nikitam/VkLib
 public Album VisitPhotosCreateAlbum(CreateAlbum method, T data)
 {
     return(this.photoVisitor.VisitPhotosCreateAlbum(method, data));
 }