diff --git a/app/src/main/java/org/ntlab/acanthus_client/entities/Animation.java b/app/src/main/java/org/ntlab/acanthus_client/entities/Animation.java index f3593fd..db26207 100644 --- a/app/src/main/java/org/ntlab/acanthus_client/entities/Animation.java +++ b/app/src/main/java/org/ntlab/acanthus_client/entities/Animation.java @@ -119,7 +119,7 @@ public void setPublic(Boolean aPublic) { this.isPublic = aPublic; } - + //----------------------------------------------------------------- //----------------------------------------------------------------- // 招待するアカウントの追加 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 97da274..1c453cf 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 @@ -4,9 +4,12 @@ import android.view.View; import androidx.appcompat.app.AppCompatActivity; +import androidx.lifecycle.MutableLiveData; import androidx.lifecycle.ViewModel; import org.ntlab.acanthus_client.Acanthus; +import org.ntlab.acanthus_client.entities.Account; +import org.ntlab.acanthus_client.entities.Animation; import org.ntlab.acanthus_client.entities.Stroke; import org.ntlab.acanthus_client.resources.accounts.LoginRest; import org.ntlab.acanthus_client.resources.gallery.StrokesRest; @@ -29,8 +32,10 @@ //----------------------------------------------------------------- // public class PaintViewModel extends ViewModel implements Runnable { - private int currentStrokeNo; + private MutableLiveData animationMutableLiveData; + + private int currentStrokeNo; private Acanthus acanthus; private Retrofit retrofit; @@ -43,18 +48,38 @@ .addConverterFactory(JacksonConverterFactory.create()) .build(); - startObserveChangedStroke(); + startObservationOfChangedStroke(); } //----------------------------------------------------------------- //----------------------------------------------------------------- // public void addStroke() { + final StrokesRest strokesRest = retrofit.create(StrokesRest.class); + + //----------------------------------------------------------------- + // + Call call = strokesRest.addStroke( + acanthus.getAid(),acanthus.getPreferenceUid(), acanthus.getPreferenceToken(),0,0,10); + call.enqueue(new Callback() { + @Override + public void onResponse(Call call, Response response) { + if (response.isSuccessful()) { + // Animationにおける + } + } + + @Override + public void onFailure(Call call, Throwable t) { + + } + }); + } //----------------------------------------------------------------- - // 座標追加API + // 座標追加API(POST) public void addPosition(Acanthus acanthus, float x, float y) { final StrokesRest strokesRest = retrofit.create(StrokesRest.class); @@ -65,6 +90,7 @@ @Override public void onResponse(Call call, Response response) { if (response.isSuccessful()) { + // Animationの座標を更新していく } } @@ -76,14 +102,14 @@ } //----------------------------------------------------------------- - // 一定間隔でサーバー上の筆跡を取得する - public void startObserveChangedStroke() { + // 一定間隔でサーバー上の筆跡を取得する(GET) + public void startObservationOfChangedStroke() { ScheduledThreadPoolExecutor threadPoolExecutor = new ScheduledThreadPoolExecutor(1); threadPoolExecutor.scheduleWithFixedDelay(this, 1000L, 100L, TimeUnit.MICROSECONDS); } //----------------------------------------------------------------- - // 筆跡取得APIを叩く + // 筆跡を取得してローカルデータを更新する @Override public void run() { final StrokesRest strokesRest = retrofit.create(StrokesRest.class); @@ -93,6 +119,7 @@ @Override public void onResponse(Call> call, Response> response) { if (response.isSuccessful()) { + // ローカルのページ情報を更新する } } @@ -102,5 +129,5 @@ } }); } - + //----------------------------------------------------------------- }