[DEV] add progress callback
This commit is contained in:
parent
df384cc8be
commit
d5f335e1e7
@ -7,6 +7,7 @@ import java.util.UUID;
|
|||||||
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
||||||
import org.glassfish.jersey.media.multipart.FormDataParam;
|
import org.glassfish.jersey.media.multipart.FormDataParam;
|
||||||
import org.kar.archidata.annotation.AsyncType;
|
import org.kar.archidata.annotation.AsyncType;
|
||||||
|
import org.kar.archidata.annotation.TypeScriptProgress;
|
||||||
import org.kar.archidata.dataAccess.DataAccess;
|
import org.kar.archidata.dataAccess.DataAccess;
|
||||||
import org.kar.archidata.dataAccess.addOn.AddOnDataJson;
|
import org.kar.archidata.dataAccess.addOn.AddOnDataJson;
|
||||||
import org.kar.archidata.dataAccess.addOn.AddOnManyToMany;
|
import org.kar.archidata.dataAccess.addOn.AddOnManyToMany;
|
||||||
@ -99,6 +100,7 @@ public class AlbumResource {
|
|||||||
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
||||||
@Operation(description = "Add a cover on a specific album")
|
@Operation(description = "Add a cover on a specific album")
|
||||||
@AsyncType(Album.class)
|
@AsyncType(Album.class)
|
||||||
|
@TypeScriptProgress
|
||||||
public Response uploadCover(@PathParam("id") final Long id, @FormDataParam("fileName") final String fileName, @FormDataParam("file") final InputStream fileInputStream,
|
public Response uploadCover(@PathParam("id") final Long id, @FormDataParam("fileName") final String fileName, @FormDataParam("file") final InputStream fileInputStream,
|
||||||
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
||||||
return DataTools.uploadCover(Album.class, id, fileName, fileInputStream, fileMetaData);
|
return DataTools.uploadCover(Album.class, id, fileName, fileInputStream, fileMetaData);
|
||||||
|
@ -7,6 +7,7 @@ import java.util.UUID;
|
|||||||
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
||||||
import org.glassfish.jersey.media.multipart.FormDataParam;
|
import org.glassfish.jersey.media.multipart.FormDataParam;
|
||||||
import org.kar.archidata.annotation.AsyncType;
|
import org.kar.archidata.annotation.AsyncType;
|
||||||
|
import org.kar.archidata.annotation.TypeScriptProgress;
|
||||||
import org.kar.archidata.dataAccess.DataAccess;
|
import org.kar.archidata.dataAccess.DataAccess;
|
||||||
import org.kar.archidata.dataAccess.addOn.AddOnDataJson;
|
import org.kar.archidata.dataAccess.addOn.AddOnDataJson;
|
||||||
import org.kar.archidata.tools.DataTools;
|
import org.kar.archidata.tools.DataTools;
|
||||||
@ -72,6 +73,7 @@ public class ArtistResource {
|
|||||||
@RolesAllowed("ADMIN")
|
@RolesAllowed("ADMIN")
|
||||||
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
||||||
@AsyncType(Artist.class)
|
@AsyncType(Artist.class)
|
||||||
|
@TypeScriptProgress
|
||||||
public Response uploadCover(@PathParam("id") final Long id, @FormDataParam("fileName") final String fileName, @FormDataParam("file") final InputStream fileInputStream,
|
public Response uploadCover(@PathParam("id") final Long id, @FormDataParam("fileName") final String fileName, @FormDataParam("file") final InputStream fileInputStream,
|
||||||
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
||||||
return DataTools.uploadCover(Artist.class, id, fileName, fileInputStream, fileMetaData);
|
return DataTools.uploadCover(Artist.class, id, fileName, fileInputStream, fileMetaData);
|
||||||
|
@ -7,6 +7,7 @@ import java.util.UUID;
|
|||||||
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
||||||
import org.glassfish.jersey.media.multipart.FormDataParam;
|
import org.glassfish.jersey.media.multipart.FormDataParam;
|
||||||
import org.kar.archidata.annotation.AsyncType;
|
import org.kar.archidata.annotation.AsyncType;
|
||||||
|
import org.kar.archidata.annotation.TypeScriptProgress;
|
||||||
import org.kar.archidata.dataAccess.DataAccess;
|
import org.kar.archidata.dataAccess.DataAccess;
|
||||||
import org.kar.archidata.dataAccess.addOn.AddOnDataJson;
|
import org.kar.archidata.dataAccess.addOn.AddOnDataJson;
|
||||||
import org.kar.archidata.tools.DataTools;
|
import org.kar.archidata.tools.DataTools;
|
||||||
@ -72,6 +73,7 @@ public class GenderResource {
|
|||||||
@RolesAllowed("ADMIN")
|
@RolesAllowed("ADMIN")
|
||||||
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
||||||
@AsyncType(Gender.class)
|
@AsyncType(Gender.class)
|
||||||
|
@TypeScriptProgress
|
||||||
public Response uploadCover(@PathParam("id") final Long id, @FormDataParam("fileName") final String fileName, @FormDataParam("file") final InputStream fileInputStream,
|
public Response uploadCover(@PathParam("id") final Long id, @FormDataParam("fileName") final String fileName, @FormDataParam("file") final InputStream fileInputStream,
|
||||||
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
||||||
return DataTools.uploadCover(Gender.class, id, fileName, fileInputStream, fileMetaData);
|
return DataTools.uploadCover(Gender.class, id, fileName, fileInputStream, fileMetaData);
|
||||||
|
@ -10,6 +10,7 @@ import java.util.UUID;
|
|||||||
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
import org.glassfish.jersey.media.multipart.FormDataContentDisposition;
|
||||||
import org.glassfish.jersey.media.multipart.FormDataParam;
|
import org.glassfish.jersey.media.multipart.FormDataParam;
|
||||||
import org.kar.archidata.annotation.AsyncType;
|
import org.kar.archidata.annotation.AsyncType;
|
||||||
|
import org.kar.archidata.annotation.TypeScriptProgress;
|
||||||
import org.kar.archidata.dataAccess.DataAccess;
|
import org.kar.archidata.dataAccess.DataAccess;
|
||||||
import org.kar.archidata.dataAccess.QueryCondition;
|
import org.kar.archidata.dataAccess.QueryCondition;
|
||||||
import org.kar.archidata.dataAccess.addOn.AddOnDataJson;
|
import org.kar.archidata.dataAccess.addOn.AddOnDataJson;
|
||||||
@ -99,6 +100,7 @@ public class TrackResource {
|
|||||||
@RolesAllowed("ADMIN")
|
@RolesAllowed("ADMIN")
|
||||||
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
||||||
@AsyncType(Track.class)
|
@AsyncType(Track.class)
|
||||||
|
@TypeScriptProgress
|
||||||
public Response uploadCover(@PathParam("id") final Long id, @FormDataParam("fileName") final String fileName, @FormDataParam("file") final InputStream fileInputStream,
|
public Response uploadCover(@PathParam("id") final Long id, @FormDataParam("fileName") final String fileName, @FormDataParam("file") final InputStream fileInputStream,
|
||||||
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
||||||
return DataTools.uploadCover(Track.class, id, fileName, fileInputStream, fileMetaData);
|
return DataTools.uploadCover(Track.class, id, fileName, fileInputStream, fileMetaData);
|
||||||
@ -118,16 +120,18 @@ public class TrackResource {
|
|||||||
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
@Consumes({ MediaType.MULTIPART_FORM_DATA })
|
||||||
// Formatter:off
|
// Formatter:off
|
||||||
@AsyncType(Track.class)
|
@AsyncType(Track.class)
|
||||||
|
@TypeScriptProgress
|
||||||
public Response uploadTrack(
|
public Response uploadTrack(
|
||||||
@FormDataParam("fileName") String fileName,
|
@FormDataParam("fileName") String fileName, //
|
||||||
@FormDataParam("gender") String gender,
|
@FormDataParam("gender") String gender, //
|
||||||
@FormDataParam("artist") String artist,
|
@FormDataParam("artist") String artist, //
|
||||||
//@FormDataParam("seriesId") String seriesId, Not used ...
|
//@FormDataParam("seriesId") String seriesId, Not used ...
|
||||||
@FormDataParam("album") String album,
|
@FormDataParam("album") String album, //
|
||||||
@AsyncType(Long.class) @FormDataParam("trackId") String trackId,
|
@AsyncType(Long.class) @FormDataParam("trackId") String trackId, //
|
||||||
@FormDataParam("title") String title,
|
@FormDataParam("title") String title, //
|
||||||
@FormDataParam("file") final InputStream fileInputStream,
|
@FormDataParam("file") final InputStream fileInputStream, //
|
||||||
@FormDataParam("file") final FormDataContentDisposition fileMetaData) {
|
@FormDataParam("file") final FormDataContentDisposition fileMetaData //
|
||||||
|
) {
|
||||||
// Formatter:on
|
// Formatter:on
|
||||||
try {
|
try {
|
||||||
// correct input string stream :
|
// correct input string stream :
|
||||||
|
@ -14,8 +14,7 @@
|
|||||||
"update_packages": "ncu --upgrade",
|
"update_packages": "ncu --upgrade",
|
||||||
"install_dependency": "pnpm install --force",
|
"install_dependency": "pnpm install --force",
|
||||||
"link_kar_cw": "pnpm link ../../kar-cw/dist/kar-cw/",
|
"link_kar_cw": "pnpm link ../../kar-cw/dist/kar-cw/",
|
||||||
"unlink_kar_cw": "pnpm unlink ../../kar-cw/dist/kar-cw/",
|
"unlink_kar_cw": "pnpm unlink ../../kar-cw/dist/kar-cw/"
|
||||||
"publish": "pnpm publish --no-git-checks"
|
|
||||||
},
|
},
|
||||||
"private": true,
|
"private": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
|
@ -546,10 +546,12 @@ export class TrackScene implements OnInit {
|
|||||||
// convert it and send it to the server
|
// convert it and send it to the server
|
||||||
let self = this;
|
let self = this;
|
||||||
|
|
||||||
|
console.log("not implemented right now...");
|
||||||
|
/*
|
||||||
this.videoCanva.toBlob((blob) => {
|
this.videoCanva.toBlob((blob) => {
|
||||||
self.trackService.uploadCoverBlob(blob, this.idTrack);
|
self.trackService.uploadCoverBlob(blob, this.idTrack);
|
||||||
}, 'image/jpeg', 0.95);
|
}, 'image/jpeg', 0.95);
|
||||||
|
*/
|
||||||
/*
|
/*
|
||||||
let tmpUrl = this.videoCanva.toDataURL('image/jpeg', 0.95);
|
let tmpUrl = this.videoCanva.toDataURL('image/jpeg', 0.95);
|
||||||
fetch(tmpUrl)
|
fetch(tmpUrl)
|
||||||
|
@ -5,9 +5,9 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { SessionService, isNullOrUndefined, isString } from '@kangaroo-and-rabbit/kar-cw';
|
import { SessionService, isArrayOf, isNullOrUndefined, isString } from '@kangaroo-and-rabbit/kar-cw';
|
||||||
|
|
||||||
import { RESTConfig, RESTUrl, isArrayOf } from 'app/back-api/rest-tools';
|
import { RESTConfig, RESTUrl } from 'app/back-api/rest-tools';
|
||||||
import { environment } from 'environments/environment';
|
import { environment } from 'environments/environment';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
|
@ -423,32 +423,5 @@ export class TrackService extends GenericDataService<Track> {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
uploadCoverBlob(blob: Blob,
|
|
||||||
TrackId: number,
|
|
||||||
progress: any = null) {
|
|
||||||
/*
|
|
||||||
const formData = new FormData();
|
|
||||||
formData.append('fileName', 'take_screenshoot');
|
|
||||||
formData.append('typeId', TrackId.toString());
|
|
||||||
formData.append('file', blob);
|
|
||||||
let self = this;
|
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
self.http.uploadMultipart(`${this.serviceName}/${TrackId}/add_cover/`, formData, progress)
|
|
||||||
.then((response) => {
|
|
||||||
let data = response;
|
|
||||||
if (data === null || data === undefined) {
|
|
||||||
reject('error retrieve data from server');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
self.bdd.asyncSetInDB(self.serviceName, TrackId, data);
|
|
||||||
resolve(data);
|
|
||||||
}).catch((response) => {
|
|
||||||
reject(response);
|
|
||||||
});
|
|
||||||
});
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user