diff --git a/app/src/main/java/org/ntlab/acanthus_client/resources/gallery/StrokesRest.java b/app/src/main/java/org/ntlab/acanthus_client/resources/gallery/StrokesRest.java index 0f7a43f..0eab749 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/resources/gallery/StrokesRest.java +++ b/app/src/main/java/org/ntlab/acanthus_client/resources/gallery/StrokesRest.java @@ -32,7 +32,7 @@ @FormUrlEncoded @POST("gallery/{aid}/pageMap/{pid}/layers/{layerNo}/strokes") Call addStroke(@Path("aid") Integer aid, @Path("pid") Integer pid, @Path("layerNo") Integer layerNo, - @Field("uid") Integer uid, @Field("uidToken") String uidToken, + @Field("uid") Integer uid,@Field("strokeNo") Integer strokeNo,@Field("uidToken") String uidToken, @Field("pen") Integer pen, @Field("color") Integer color, @Field("thick") Integer thick); //----------------------------------------------------------------- diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintCanvas.java b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintCanvas.java index c235847..4abd53a 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintCanvas.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintCanvas.java @@ -90,6 +90,7 @@ case MotionEvent.ACTION_DOWN: Log.d("motion", "+++++++++++++++++++++++++++++++++++++++down======================================================"); onTouched(x, y); + paintViewModel.setmStrokeNo(); paintViewModel.addLocalStrokeRequest(x,y); //paintViewModel.addPositionLocal(x, y); break; diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintViewModel.java b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintViewModel.java index 2f174ce..ce53a79 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintViewModel.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/paint/PaintViewModel.java @@ -14,6 +14,7 @@ import java.util.ArrayList; import java.util.Collection; +import java.util.Random; import java.util.concurrent.ScheduledThreadPoolExecutor; import java.util.concurrent.TimeUnit; @@ -27,8 +28,8 @@ private MutableLiveData mCurPageNo = new MutableLiveData<>(); private MutableLiveData mCurPageId = new MutableLiveData<>(); private MutableLiveData mPageSize = new MutableLiveData<>(); - private MutableLiveData mStrokeNo = new MutableLiveData<>(); - + private MutableLiveData StrokeNo = new MutableLiveData<>(); + private int mStrokeNo = 0; private MutableLiveData> mStrokes = new MutableLiveData<>(); private ScheduledThreadPoolExecutor thread = new ScheduledThreadPoolExecutor(1); @@ -38,6 +39,8 @@ private int cnt = 0; private float fsx = 0; private float fsy = 0; + private int ranStrokeNo=0; + private Acanthus acanthus; //----------------------------------------------------------------- // getter @@ -45,7 +48,7 @@ return this.mStrokes; } - public LiveData getStrokeNo() { + public int getStrokeNo() { return this.mStrokeNo; } @@ -64,7 +67,7 @@ paintModelContainer = new PaintModelContainer(acanthus); paintModelContainer.getPaintConnectionModel().init(acanthus); paintModelContainer.getInvitesConnectionModel().init(acanthus); - + this.acanthus=acanthus; mStrokes.setValue(new ArrayList<>()); mStrokes.getValue().add(new Stroke()); @@ -74,6 +77,15 @@ thread.scheduleWithFixedDelay(this, 1000L, 100L, TimeUnit.MILLISECONDS); } + //----------------------------------------------------------------- + // strokeNoの発行 + public void setmStrokeNo(){ + Random random = new Random(); + int randomValue = random.nextInt(1000000); + String s= acanthus.getPreferenceUid().toString()+acanthus.getAid().toString()+String.valueOf(randomValue); + mStrokeNo=Integer.valueOf(s); + Log.d("TAG", "setmStrokeNo: "+mStrokeNo); + } //----------------------------------------------------------------- // 描画APIの通信リクエスト @@ -86,15 +98,15 @@ public void addPositionRequest(float x, float y) { // Log.d("mStrokeNo", mStrokeNo.getValue().toString()); - paintModelContainer.getPaintConnectionModel().addPosition(cnt, x, y, mStrokeNo.getValue()); + paintModelContainer.getPaintConnectionModel().addPosition(cnt, x, y, mStrokeNo); //positionLocalx.add((double)x); //positionLocaly.add((double)y); cnt++; } public void addPositionRequestfirst() { - paintModelContainer.getPaintConnectionModel().addPosition(0, fsx, fsy, mStrokeNo.getValue()); - paintModelContainer.getPaintConnectionModel().addPosition(cnt, -1, -1, mStrokeNo.getValue()); + paintModelContainer.getPaintConnectionModel().addPosition(0, fsx, fsy, mStrokeNo); + paintModelContainer.getPaintConnectionModel().addPosition(cnt, -1, -1, mStrokeNo); //Log.d("x", positionLocalx.toString()); //Log.d("y", positionLocaly.toString()); //positionLocalx.clear(); @@ -160,7 +172,7 @@ public void run() { // Log.d("debug", "run: "); paintModelContainer.getPaintConnectionModel().getStrokes(mStrokes); - paintModelContainer.getPaintConnectionModel().getStrokeNo(mStrokeNo); + paintModelContainer.getPaintConnectionModel().getStrokeNo(StrokeNo); } //----------------------------------------------------------------- diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/paint/models/PaintConnectionModel.java b/app/src/main/java/org/ntlab/acanthus_client/views/paint/models/PaintConnectionModel.java index 960c354..3e07d5c 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/paint/models/PaintConnectionModel.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/paint/models/PaintConnectionModel.java @@ -61,21 +61,21 @@ //----------------------------------------------------------------- // ローカルでのストロークの追加(POST) - public void addLocalStroke(MutableLiveData mStrokeNo) { + public void addLocalStroke(int mStrokeNo) { final StrokesRest strokesRest = retrofit.create(StrokesRest.class); Log.d("strokeNo:", "^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^add----------------------"); //----------------------------------------------------------------- // ストローク追加API Call call = strokesRest.addStroke( - acanthus.getAid(), acanthus.getEditingPageId(), 0, acanthus.getPreferenceUid(), acanthus.getPreferenceToken(), + acanthus.getAid(), acanthus.getEditingPageId(), 0, acanthus.getPreferenceUid(),mStrokeNo, acanthus.getPreferenceToken(), 0, 0, 10); // strokeNoを更新 call.enqueue(new Callback() { @Override public void onResponse(Call call, Response response) { - if (response.isSuccessful()) mStrokeNo.setValue(response.body()); + if (response.isSuccessful()); } @Override diff --git a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageViewModel.java b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageViewModel.java index c4db76d..66af7f2 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageViewModel.java +++ b/app/src/main/java/org/ntlab/acanthus_client/views/userpage/UserPageViewModel.java @@ -100,15 +100,15 @@ final FollowsRest followsRest = retrofit.create(FollowsRest.class); //フォローの解除 - Call call = followsRest.releaseFollows(uid, token, followUid); - call.enqueue(new Callback() { + Call call = followsRest.releaseFollows(uid, token, followUid); + call.enqueue(new Callback() { @Override - public void onResponse(Call call, Response response) { + public void onResponse(Call call, Response response) { } @Override - public void onFailure(Call call, Throwable t) { + public void onFailure(Call call, Throwable t) { } });