Ignore:
Timestamp:
04/26/19 17:36:43 (5 years ago)
Author:
bln4
Message:

A cleaner more methodical way of establishing what the paths are based on two factors: new vs old regime and authenticated vs not. This was motivated by a bug David found in starting a fresh version of Expeditee without -Dexpeditee.authentication. This fixes that bug.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/expeditee/gui/FrameIO.java

    r1325 r1328  
    134134       
    135135        public static void changeParentAndSubFolders(String newFolder) {
    136                 // Partial Paths.
    137                 PARENT_FOLDER = newFolder;     
    138                 String resourcesPublicPath = PARENT_FOLDER + "resources-public" + File.separator;
    139                 String resourcesPrivateIndividualPath = PARENT_FOLDER + "resources-" + UserSettings.UserName.get() + File.separator;
    140 
    141                 // Standard paths.
     136                // Partial Paths
     137                PARENT_FOLDER = newFolder;
    142138                PUBLIC_PATH = PARENT_FOLDER + "public" + File.separator;
    143139                TRASH_PATH = PARENT_FOLDER + "trash" + File.separator;
    144                 HELP_PATH = PARENT_FOLDER + "documentation" + File.separator;
    145140                PROFILE_PATH = PARENT_FOLDER + "profiles" + File.separator;
    146141                EXPORTS_PATH = PARENT_FOLDER + "exports" + File.separator;
    147142                STATISTICS_PATH = PARENT_FOLDER + "statistics" + File.separator;
    148143                LOGS_PATH = PARENT_FOLDER + "logs" + File.separator;
    149                                
    150144               
    151                 // Conditional paths
     145                String resourcesPublicPath = PARENT_FOLDER + "resources-public" + File.separator;
     146                String resourcesPrivateIndividualPath = PARENT_FOLDER + "resources-" + UserSettings.UserName.get() + File.separator;
     147               
    152148                if (UserSettings.PublicAndPrivateResources) {
    153                         // Work with a system of public and private folders
    154                        
     149                        // Paths for the new regime
    155150                        FONT_PATH = resourcesPublicPath + "fonts" + File.separator;
    156151                        DICT_PATH = resourcesPublicPath + "dict" + File.separator;
     152                        HELP_PATH = resourcesPublicPath + "documentation" + File.separator;
     153                        HELP_PRIVATE_PATH = resourcesPrivateIndividualPath + "documentation" + File.separator;
     154                        FRAME_PATH = resourcesPublicPath + "framesets" + File.separator;
     155                        FRAME_PRIVATE_PATH = resourcesPrivateIndividualPath + "framesets" + File.separator;
     156                        MESSAGES_PATH = resourcesPrivateIndividualPath + "messages" + File.separator;
    157157                        IMAGES_PATH = resourcesPublicPath + "images" + File.separator;
     158                        IMAGES_PRIVATE_PATH = resourcesPrivateIndividualPath + "images" + File.separator;
    158159                        AUDIO_PATH = resourcesPublicPath + "audio" + File.separator;
    159                         FRAME_PATH = resourcesPublicPath + "framesets" + File.separator;
     160                        AUDIO_PRIVATE_PATH = resourcesPrivateIndividualPath + "audio" + File.separator;
     161
     162                        // Used only when extracting resources (when expeditee is run for first time)
     163                        RESOURCES_PRIVATE_PATH = PARENT_FOLDER + "resources-private" + File.separator;
     164                       
     165                        if (AuthenticatorBrowser.isAuthenticated()) {
     166                                // Paths for the new regime while authenticated
     167                                SHARED_FRAMESETS_PATH = resourcesPrivateIndividualPath + "framesets-shared" + File.separator;
     168                                DEAD_DROPS_PATH = resourcesPrivateIndividualPath + "deaddrops" + File.separator;
     169                                CONTACTS_PATH = resourcesPrivateIndividualPath + "contacts" + File.separator;
     170                                MAIL_PATH = resourcesPrivateIndividualPath + "mail" + File.separator;
     171                        } else {
     172                                SHARED_FRAMESETS_PATH = null;
     173                                DEAD_DROPS_PATH = null;
     174                                CONTACTS_PATH = null;
     175                                MAIL_PATH = null;
     176                        }
    160177                } else {
     178                        // Paths for the old regime
    161179                        FONT_PATH = PARENT_FOLDER + "fonts" + File.separator;
    162180                        DICT_PATH = PARENT_FOLDER + "dict" + File.separator;
     181                        HELP_PATH = PARENT_FOLDER + "documentation" + File.separator;
     182                        FRAME_PATH = PARENT_FOLDER + "framesets" + File.separator;
     183                        MESSAGES_PATH = PARENT_FOLDER + "messages" + File.separator;
    163184                        IMAGES_PATH = PARENT_FOLDER + "images" + File.separator;
    164185                        AUDIO_PATH = PARENT_FOLDER + "audio" + File.separator;
    165                         FRAME_PATH = PARENT_FOLDER + "framesets" + File.separator;
    166                         DEAD_DROPS_PATH = PARENT_FOLDER + "deaddrops" + File.separator;
    167                 }
    168                
    169                 if (!UserSettings.PublicAndPrivateResources || !AuthenticatorBrowser.isAuthenticated()) {
    170186                       
    171                         if (UserSettings.UserName.get().equals(AuthenticatorBrowser.USER_NOBODY)) {
    172                                 System.err.println("**** FrameIO::changeParentAndSubFolders(): Not setting subfolders for user '"+AuthenticatorBrowser.USER_NOBODY+"'");
    173                         }
    174                        
    175                         // If we are using the old regime, or user.name set to Browser.USER_NOBODY
    176                         // => then these paths should not be used.
    177                         RESOURCES_PATH = null;
    178                         SHARED_FRAMESETS_PATH = null;
    179                         RESOURCES_PRIVATE_PATH = null;         
    180                         FRAME_PRIVATE_PATH = null;
    181                         IMAGES_PRIVATE_PATH = null;
    182                         AUDIO_PRIVATE_PATH = null;
    183                         CONTACTS_PATH = null;
    184                         HELP_PRIVATE_PATH = null;
    185                        
    186                         if (!UserSettings.PublicAndPrivateResources) {
    187                                 MESSAGES_PATH = PARENT_FOLDER + "messages" + File.separator;
     187                        if (AuthenticatorBrowser.isAuthenticated()) {
     188                                // Paths for the old regime while authenticated
     189                                SHARED_FRAMESETS_PATH = PARENT_FOLDER + "framesets-shared" + File.separator;
     190                                DEAD_DROPS_PATH = PARENT_FOLDER + "deaddrops" + File.separator;
     191                                CONTACTS_PATH = PARENT_FOLDER + "contacts" + File.separator;
     192                                MAIL_PATH = PARENT_FOLDER + "mail" + File.separator;
    188193                        } else {
    189                                 MESSAGES_PATH = resourcesPrivateIndividualPath + "messages" + File.separator;
    190                         }
    191                        
    192                 } else {
    193                         RESOURCES_PATH = resourcesPublicPath + "documentation" + File.separator;
    194                         SHARED_FRAMESETS_PATH = resourcesPrivateIndividualPath + "framesets-shared" + File.separator;
    195                        
    196                         RESOURCES_PRIVATE_PATH = PARENT_FOLDER + "resources-private" + File.separator;
    197                         FRAME_PRIVATE_PATH = resourcesPrivateIndividualPath + "framesets" + File.separator;
    198                         IMAGES_PRIVATE_PATH = resourcesPrivateIndividualPath + "images" + File.separator;
    199                         AUDIO_PRIVATE_PATH = resourcesPrivateIndividualPath + "audio" + File.separator;
    200                         CONTACTS_PATH = resourcesPrivateIndividualPath + "contacts" + File.separator;
    201                         HELP_PRIVATE_PATH = resourcesPrivateIndividualPath + "documentation" + File.separator;
    202                         MESSAGES_PATH = resourcesPrivateIndividualPath + "messages" + File.separator;
    203                         MAIL_PATH = resourcesPrivateIndividualPath + "mail" + File.separator;
    204                         DEAD_DROPS_PATH = resourcesPrivateIndividualPath + "deaddrops" + File.separator;
    205                 }
    206                        
     194                                SHARED_FRAMESETS_PATH = null;
     195                                DEAD_DROPS_PATH = null;
     196                                CONTACTS_PATH = null;
     197                                MAIL_PATH = null;
     198                        }
     199                }
    207200               
    208201                System.err.println("**** FrameIO::changeParentAndSubFolder(): Calling AudioPathManger.changeParentAndSubFolder()");
    209202                AudioPathManager.changeParentAndSubFolders(newFolder);
    210203        }
     204       
     205//      public static void changeParentAndSubFolders(String newFolder) {
     206//              // Partial Paths.
     207//              PARENT_FOLDER = newFolder;     
     208//              String resourcesPublicPath = PARENT_FOLDER + "resources-public" + File.separator;
     209//              String resourcesPrivateIndividualPath = PARENT_FOLDER + "resources-" + UserSettings.UserName.get() + File.separator;
     210//
     211//              // Standard paths.
     212//              PUBLIC_PATH = PARENT_FOLDER + "public" + File.separator;
     213//              TRASH_PATH = PARENT_FOLDER + "trash" + File.separator;
     214//              HELP_PATH = PARENT_FOLDER + "documentation" + File.separator;
     215//              PROFILE_PATH = PARENT_FOLDER + "profiles" + File.separator;
     216//              EXPORTS_PATH = PARENT_FOLDER + "exports" + File.separator;
     217//              STATISTICS_PATH = PARENT_FOLDER + "statistics" + File.separator;
     218//              LOGS_PATH = PARENT_FOLDER + "logs" + File.separator;
     219//                             
     220//             
     221//              // Conditional paths
     222//              if (UserSettings.PublicAndPrivateResources) {
     223//                      // Work with a system of public and private folders
     224//                     
     225//                      FONT_PATH = resourcesPublicPath + "fonts" + File.separator;
     226//                      DICT_PATH = resourcesPublicPath + "dict" + File.separator;
     227//                      IMAGES_PATH = resourcesPublicPath + "images" + File.separator;
     228//                      AUDIO_PATH = resourcesPublicPath + "audio" + File.separator;
     229//                      FRAME_PATH = resourcesPublicPath + "framesets" + File.separator;
     230//              } else {
     231//                      FONT_PATH = PARENT_FOLDER + "fonts" + File.separator;
     232//                      DICT_PATH = PARENT_FOLDER + "dict" + File.separator;
     233//                      IMAGES_PATH = PARENT_FOLDER + "images" + File.separator;
     234//                      AUDIO_PATH = PARENT_FOLDER + "audio" + File.separator;
     235//                      FRAME_PATH = PARENT_FOLDER + "framesets" + File.separator;
     236//                      DEAD_DROPS_PATH = PARENT_FOLDER + "deaddrops" + File.separator;
     237//              }
     238//             
     239//              if (!UserSettings.PublicAndPrivateResources || (AuthenticatorBrowser.isAuthenticationRequired() && !AuthenticatorBrowser.isAuthenticated())) {
     240//                     
     241//                      if (UserSettings.UserName.get().equals(AuthenticatorBrowser.USER_NOBODY)) {
     242//                              System.err.println("**** FrameIO::changeParentAndSubFolders(): Not setting subfolders for user '"+AuthenticatorBrowser.USER_NOBODY+"'");
     243//                      }
     244//                     
     245//                      // If we are using the old regime, or user.name set to Browser.USER_NOBODY
     246//                      // => then these paths should not be used.
     247//                      RESOURCES_PATH = null;
     248//                      SHARED_FRAMESETS_PATH = null;
     249//                      RESOURCES_PRIVATE_PATH = null;         
     250//                      FRAME_PRIVATE_PATH = null;
     251//                      IMAGES_PRIVATE_PATH = null;
     252//                      AUDIO_PRIVATE_PATH = null;
     253//                      CONTACTS_PATH = null;
     254//                      HELP_PRIVATE_PATH = null;
     255//                     
     256//                      if (!UserSettings.PublicAndPrivateResources) {
     257//                              MESSAGES_PATH = PARENT_FOLDER + "messages" + File.separator;
     258//                      } else {
     259//                              MESSAGES_PATH = resourcesPrivateIndividualPath + "messages" + File.separator;
     260//                      }
     261//                     
     262//              } else {
     263//                      RESOURCES_PATH = resourcesPublicPath + "documentation" + File.separator;
     264//                      SHARED_FRAMESETS_PATH = resourcesPrivateIndividualPath + "framesets-shared" + File.separator;
     265//                     
     266//                      RESOURCES_PRIVATE_PATH = PARENT_FOLDER + "resources-private" + File.separator;
     267//                      FRAME_PRIVATE_PATH = resourcesPrivateIndividualPath + "framesets" + File.separator;
     268//                      IMAGES_PRIVATE_PATH = resourcesPrivateIndividualPath + "images" + File.separator;
     269//                      AUDIO_PRIVATE_PATH = resourcesPrivateIndividualPath + "audio" + File.separator;
     270//                      CONTACTS_PATH = resourcesPrivateIndividualPath + "contacts" + File.separator;
     271//                      HELP_PRIVATE_PATH = resourcesPrivateIndividualPath + "documentation" + File.separator;
     272//                      MESSAGES_PATH = resourcesPrivateIndividualPath + "messages" + File.separator;
     273//                      MAIL_PATH = resourcesPrivateIndividualPath + "mail" + File.separator;
     274//                      DEAD_DROPS_PATH = resourcesPrivateIndividualPath + "deaddrops" + File.separator;
     275//              }
     276//                     
     277//             
     278//              System.err.println("**** FrameIO::changeParentAndSubFolder(): Calling AudioPathManger.changeParentAndSubFolder()");
     279//              AudioPathManager.changeParentAndSubFolders(newFolder);
     280//      }
    211281       
    212282        // All methods are static, this should not be instantiated
Note: See TracChangeset for help on using the changeset viewer.