OSDN Git Service

無理やりサムネイルまで。
authorMRSa <mrsa@myad.jp>
Sun, 26 Apr 2020 06:55:41 +0000 (15:55 +0900)
committerMRSa <mrsa@myad.jp>
Sun, 26 Apr 2020 06:55:41 +0000 (15:55 +0900)
app/src/main/java/net/osdn/gokigen/gr2control/camera/fuji_x/wrapper/FujiXRunMode.java
app/src/main/java/net/osdn/gokigen/gr2control/camera/fuji_x/wrapper/command/messages/StatusRequestMessage.java
app/src/main/java/net/osdn/gokigen/gr2control/camera/fuji_x/wrapper/connection/FujiXCameraModeChangeToLiveView.java
app/src/main/java/net/osdn/gokigen/gr2control/camera/fuji_x/wrapper/playback/FujiXPlaybackControl.java

index 12d2f74..4c9e57f 100644 (file)
@@ -38,8 +38,7 @@ public class FujiXRunMode implements ICameraRunMode, IFujiXRunModeHolder, IFujiX
 
         if (interfaceProvider.getCameraConnection().getConnectionStatus() != ICameraConnection.CameraConnectionStatus.CONNECTED)
         {
-            //
-            Log.v(TAG, " ===== DOES NOT CONNECT TO CAMERA, SO PENDING...");
+            Log.v(TAG, " ===== DOES NOT CONNECT TO CAMERA, SO CHANGE MODE IS PENDING...");
             return;
         }
 
index 6b0ad39..e90edfb 100644 (file)
@@ -105,11 +105,11 @@ public class FujiXCameraModeChangeToLiveView implements View.OnClickListener, IF
                     {
                         runModeHolder.transitToRecordingMode(true);
                     }
-                    Log.v(TAG, "CHANGED LIVEVIEW MODE : DONE.");
+                    Log.v(TAG, "  CHANGED LIVEVIEW MODE : DONE.");
                     break;
 
                 default:
-                    Log.v(TAG, "RECEIVED UNKNOWN ID : " + id);
+                    Log.v(TAG, "  RECEIVED UNKNOWN ID : " + id);
                     break;
             }
         }
index 559712c..9fc3855 100644 (file)
@@ -96,13 +96,12 @@ public class FujiXPlaybackControl implements IPlaybackControl, IFujiXCommandCall
         try
         {
             int start = 0;
-            if (path.indexOf("/") == 0)
+            if (name.indexOf("/") == 0)
             {
                 start = 1;
             }
-            String indexStr = path.substring(start, path.indexOf("."));
-            Log.v(TAG, "downloadContentThumbnail() : " + path + " " + indexStr);
-            int index = Integer.parseInt(indexStr);
+            Log.v(TAG, "downloadContentThumbnail() : " + path + " " + name);
+            int index = getIndexNumber(start, name);
             if ((index > 0)&&(index <= imageContentInfo.size()))
             {
                 IFujiXCommandPublisher publisher = provider.getCommandPublisher();
@@ -126,12 +125,12 @@ public class FujiXPlaybackControl implements IPlaybackControl, IFujiXCommandCall
         try
         {
             int start = 0;
-            if (path.indexOf("/") == 0)
+            if (name.indexOf("/") == 0)
             {
                 start = 1;
             }
-            String indexStr = path.substring(start, path.indexOf("."));
-            Log.v(TAG, "FujiX::downloadContent() : " + path + " " + indexStr);
+            String indexStr = name.substring(start, name.indexOf("."));
+            Log.v(TAG, "FujiX::downloadContent() : " + path + " " + name + " " + indexStr);
             int index = Integer.parseInt(indexStr);
             //FujiXImageContentInfo contentInfo = imageContentInfo.get(index);   // 特にデータを更新しないから大丈夫か?
             if ((index > 0)&&(index <= imageContentInfo.size()))
@@ -146,6 +145,38 @@ public class FujiXPlaybackControl implements IPlaybackControl, IFujiXCommandCall
         }
     }
 
+    private int getIndexNumber(int start, @NonNull String name)
+    {
+        String indexStr = name.substring(start, name.indexOf("."));
+        int indexNo = -1;
+        try
+        {
+            indexNo = Integer.parseInt(indexStr);
+        }
+        catch (Exception e)
+        {
+            //e.printStackTrace();
+        }
+        if (indexNo >= 0)
+        {
+            return (indexNo);
+        }
+        indexStr = name.substring(start);
+        int size = imageContentInfo.size();
+        for (int index = 0; index < size; index++)
+        {
+            FujiXImageContentInfo info = imageContentInfo.valueAt(index);
+            String contentName = info.getOriginalName();
+            if (indexStr.matches(contentName))
+            {
+                return (info.getId());
+            }
+            Log.v(TAG, " contentName : " + contentName);
+        }
+        Log.v(TAG, "index is not found : " + name + " " + indexStr);
+        return (-1);
+    }
+
     @Override
     public void showPictureStarted()
     {