POST時のurl変更
1 parent 8432e53 commit 9c23ea8fe2b2fd6dc886f3c22a285ea91a93b365
g-akagi authored on 19 Oct 2021
Showing 2 changed files
View
42
src/main/java/org/ntlab/acanthus_server/resources/gallery/StrokesRest.java
@Component
@Path("/gallery")
public class StrokesRest implements ApplicationContextAware {
private final Gallery gallery = Gallery.getInstance();
private int srstrokeSize=0;
private int srstrokeNo=0;
private int srstrokeSize = 0;
private int srstrokeNo = 0;
 
private ApplicationContext applicationContext;
 
 
@Path("/{aid}/pageMap/{pid}/layers/{layerNo}/strokes")
@POST
@Produces(MediaType.APPLICATION_JSON)
public String addStrokes(@PathParam("aid") Integer aid, @PathParam("pid") Integer pid, @PathParam("layerNo") Integer layerNo,
@FormParam("uid") Integer uid, @FormParam("strokeNo") Integer strokeNo, @FormParam("uidToken") String uidToken, @FormParam("pen") Integer pen,
@FormParam("color") Integer color, @FormParam("thick") Integer thick) {
@FormParam("uid") Integer uid, @FormParam("strokeNo") Integer strokeNo, @FormParam("uidToken") String uidToken, @FormParam("pen") Integer pen,
@FormParam("color") Integer color, @FormParam("thick") Integer thick) {
var pages = gallery.getAnimationByAid(aid).getPages();
var strokes = new ArrayList<Stroke>();
 
for (var p : pages) {
Animation animation = gallery.getAnimationByAid(aid);
ArrayList<Page> pages = animation.getPages();
HashMap<Integer, String> pageUrl = new HashMap<>();
 
for (Page p: pages){
for (Page p : pages) {
String url = "http://nitta-lab-www.is.konan-u.ac.jp/gallery/" + aid + "/" + p.getPid() + "/a" + aid + "p" + p.getPid() + ".png";
pageUrl.put(p.getPageNo(), url);
}
 
return pageUrl;
}
 
 
 
// _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
// スクショで撮った画像をサーバ内の指定フォルダーにおく
public String addImage(@PathParam("aid") Integer aid, @PathParam("pid") Integer pid, @FormParam("image") String image) {
 
 
String vid = "a" + aid.toString() + pid.toString();
// String url = "http://nitta-lab-www.is.konan-u.ac.jp/nitta-lab-www/webapps/";
 
String path1 = "";
try {
path1 = applicationContext.getResource("file:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps";
Base64Decode.saveAsFile(aid, pid, path1, image);
// path1 = applicationContext.getResource("http:").getFile().getAbsolutePath() + "/apache-tomcat-9.0.10/webapps";
path1 = applicationContext.getResource("http:").getFile().getAbsolutePath() + "/webapps";
Base64Decode.saveAsFile(aid, pid, path1, image);
 
} catch (IOException e) {
e.printStackTrace();
throw new WebApplicationException(500);
}
 
 
String url = "http://nitta-lab-www.is.konan-u.ac.jp" + vid;
 
/* ArrayList<String> categories = (ArrayList<String>) category;
ScreenImage v = screenimage.createScreenImage(aid, pid, vid, url, categories);
return v;*/
 
return "OK";
return path1;
}
 
 
// _/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
@Path("/{aid}/pageMap/{pid}/layers/{layerNo}/strokes/{strokeNo}/positions")
@POST
@Produces(MediaType.APPLICATION_JSON)
public String addPosition(@FormParam("positionNo") Integer positionNo, @PathParam("aid") Integer aid, @PathParam("pid") Integer pid, @PathParam("strokeNo") Integer strokeNo,
@PathParam("layerNo") Integer layerNo, @FormParam("x") Float x, @FormParam("y") Float y) {
@PathParam("layerNo") Integer layerNo, @FormParam("x") Float x, @FormParam("y") Float y) {
var pages = gallery.getAnimationByAid(aid).getPages();
 
var strokes = new ArrayList<Stroke>();
for (var p : pages) {
}
 
var position = new Position();
position.setXY(positionNo, x, y);
if(srstrokeNo==strokeNo){
if (srstrokeNo == strokeNo) {
strokes.get(srstrokeSize).addPosition(position);
}else {
for(int i = 0; i < strokes.size(); i++){
if(strokes.get(i).getStrokeNo()==strokeNo)
{
srstrokeNo=strokes.get(i).getStrokeNo();
srstrokeSize=i;
} else {
for (int i = 0; i < strokes.size(); i++) {
if (strokes.get(i).getStrokeNo() == strokeNo) {
srstrokeNo = strokes.get(i).getStrokeNo();
srstrokeSize = i;
strokes.get(i).addPosition(position);
}
}
}
// strokes.get(strokeNo).addPosition(position); // 呼び出したstrokesに座標を追加する
// strokes.get(strokeNo).addPosition(position); // 呼び出したstrokesに座標を追加する
// if(animation != null) {
////// this.Position.setXY(x, y);
////// this.positions.add(this.Position);
////// }else{
View
3
■■
src/main/java/org/ntlab/acanthus_server/utils/Base64Decode.java
//ファイルがないときは作成する
String fileName = "a" + aid.toString() + "p" + pid.toString() + ".png";
String path2 = "/gallery/"+ aid.toString() + pid.toString();
String path = path1 + path2 + "/" + fileName;
 
System.out.println(path.toString());
 
File file = new File(path);
file.getParentFile().mkdirs();
file.createNewFile();