OSDN Git Service

カメラ内のオブジェクト数を取得する部分を作りこむ。(SONY)
[gokigen/PKRemote.git] / app / src / main / java / net / osdn / gokigen / pkremote / camera / vendor / sony / wrapper / playback / SonyPlaybackControl.java
1 package net.osdn.gokigen.pkremote.camera.vendor.sony.wrapper.playback;
2
3 import android.util.Log;
4
5 import androidx.annotation.NonNull;
6
7 import net.osdn.gokigen.pkremote.camera.interfaces.playback.ICameraContentListCallback;
8 import net.osdn.gokigen.pkremote.camera.interfaces.playback.ICameraFileInfo;
9 import net.osdn.gokigen.pkremote.camera.interfaces.playback.IContentInfoCallback;
10 import net.osdn.gokigen.pkremote.camera.interfaces.playback.IDownloadContentCallback;
11 import net.osdn.gokigen.pkremote.camera.interfaces.playback.IDownloadContentListCallback;
12 import net.osdn.gokigen.pkremote.camera.interfaces.playback.IDownloadThumbnailImageCallback;
13 import net.osdn.gokigen.pkremote.camera.interfaces.playback.IPlaybackControl;
14 import net.osdn.gokigen.pkremote.camera.vendor.sony.wrapper.ISonyCameraApi;
15
16 import org.json.JSONArray;
17 import org.json.JSONObject;
18
19 public class SonyPlaybackControl implements IPlaybackControl
20 {
21     private final String TAG = toString();
22     private ISonyCameraApi cameraApi = null;
23
24     public SonyPlaybackControl()
25     {
26         Log.v(TAG, "SonyPlaybackControl()");
27
28     }
29
30     public void setCameraApi(@NonNull ISonyCameraApi sonyCameraApi)
31     {
32         cameraApi = sonyCameraApi;
33     }
34
35     @Override
36     public String getRawFileSuffix()
37     {
38         return "ARW";
39     }
40
41     @Override
42     public void downloadContentList(IDownloadContentListCallback callback)
43     {
44         Log.v(TAG, "downloadContentList()");
45
46     }
47
48     @Override
49     public void getContentInfo(String path, String name, IContentInfoCallback callback)
50     {
51         Log.v(TAG, "getContentInfo()");
52
53     }
54
55     @Override
56     public void updateCameraFileInfo(ICameraFileInfo info)
57     {
58         Log.v(TAG, "updateCameraFileInfo()");
59
60     }
61
62     @Override
63     public void downloadContentScreennail(String path, IDownloadThumbnailImageCallback callback)
64     {
65         Log.v(TAG, "downloadContentScreennail()");
66
67     }
68
69     @Override
70     public void downloadContentThumbnail(String path, IDownloadThumbnailImageCallback callback)
71     {
72         Log.v(TAG, "downloadContentThumbnail()");
73
74     }
75
76     @Override
77     public void downloadContent(String path, boolean isSmallSize, IDownloadContentCallback callback)
78     {
79         Log.v(TAG, "downloadContent()");
80
81     }
82
83     @Override
84     public void getCameraContentList(ICameraContentListCallback callback)
85     {
86         Log.v(TAG, "getCameraContentList()");
87         try
88         {
89             if (cameraApi == null)
90             {
91                 Log.v(TAG, "CAMERA API is NULL.");
92                 return;
93             }
94             JSONObject storageInformationObj = cameraApi.getStorageInformation();
95             JSONObject schemeListObj = cameraApi.getSchemeList();
96             //JSONArray schemeArray = schemeListObj.getJSONArray("result");
97             JSONObject sourceObj = cameraApi.getSourceList("storage");
98             //JSONArray sourceArray = sourceObj.getJSONArray("result");
99             JSONObject countObject = cameraApi.getContentCountFlatAll("storage:memoryCard1");
100             JSONArray resultArray = countObject.getJSONArray("result");
101             int objectCount = resultArray.getJSONObject(0).getInt("count");
102             Log.v(TAG, "  OBJECT COUNT  : " + objectCount);
103
104         }
105         catch (Exception e)
106         {
107             e.printStackTrace();
108         }
109     }
110 }