Class JarikoUtils


  • public class JarikoUtils
    extends Object
    Author:
    lana
    • Constructor Detail

      • JarikoUtils

        public JarikoUtils()
    • Method Detail

      • extractProgramName

        public static String extractProgramName​(URI uri)
      • extractProgramName

        public static String extractProgramName​(String pathOrName)
        Extracts from parameter the program name
      • isCopy

        public static boolean isCopy​(URI uri)
      • uriToPath

        public static Path uriToPath​(URI uri)
        Converts an uri to path
        Parameters:
        uri - to convert
        Returns:
        the path
      • isCopy

        public static boolean isCopy​(String pathOrName)
      • extractCopyName

        public static String extractCopyName​(URI uri)
      • extractCopyName

        public static String extractCopyName​(String pathOrName)
      • extractCopyId

        public static com.smeup.rpgparser.parsing.facade.CopyId extractCopyId​(String pathOrName)
      • getJarikoLanguageConfig

        public static JarikoLanguageConfig getJarikoLanguageConfig​(com.smeup.jardis.core.Context context)
      • createWorkspaceMgr

        public static WorkspaceMgr createWorkspaceMgr​(com.smeup.jardis.core.Context context,
                                                      com.smeup.jardis.core.JardisSession jardisSession)
      • getStatements

        public static List<com.smeup.rpgparser.parsing.facade.SourceReference> getStatements​(com.smeup.rpgparser.parsing.ast.CompilationUnit compilationUnit,
                                                                                             String pgmName)
      • createDefaultContextSupplier

        public static Function<com.smeup.jardis.core.JardisSession,​JarikoDebugeeContext> createDefaultContextSupplier​(Path localWorkspace,
                                                                                                                            Function<com.smeup.jardis.core.JardisConsts.LanguageId,​String> pathForLanguageConfig)
      • sourceUriSupplier

        public static Function<String,​URI> sourceUriSupplier​(Supplier<List<com.smeup.rpgparser.rpginterop.RpgProgramFinder>> programFinders)
        Provides a function that supplies a URI for a given RPG program name.
        Parameters:
        programFinders - A supplier that provides a list of RpgProgramFinder instances.
        Returns:
        A function that takes an RPG program name and returns its URI.
      • addUserPathsOnTheTopOfProgramFinders

        public static void addUserPathsOnTheTopOfProgramFinders​(List<com.smeup.rpgparser.rpginterop.RpgProgramFinder> programFinders,
                                                                String localWorkspace,
                                                                com.smeup.jardis.core.JardisSession jardisSession)
        Add on the top of the UserProgramFinder retrieved from the directories where the user will place his programs and copies, after that add the ResourceProgramFinder
      • updateReloadConfig

        public static void updateReloadConfig​(com.smeup.rpgparser.execution.Configuration configuration,
                                              String localWorkspace,
                                              com.smeup.jardis.core.JardisSession jardisSession)
        Update reload config by adding on the top of the metadata producer (when implemented in Kokos) the searching of reload metadata is, first inside the user workspace, just like for the searching for the programs and copy, and then by using the metadata producer implemented in kokos.
      • validateJardisSession

        public static void validateJardisSession​(com.smeup.jardis.core.Context context,
                                                 com.smeup.jardis.core.JardisSession jardisSession)
                                          throws IllegalStateException
        Throws:
        IllegalStateException
      • getRpgPaths

        public static List<Path> getRpgPaths​(Path localWorkspace,
                                             com.smeup.jardis.core.JardisSession jardisSession)
        Returns:
        Paths containing directory rpg. In case of localWorkspace is not null the paths will be searched in localWorkspace else paths will be all paths that the user will have added in his workspace.
      • removeUserProgramFinders

        public static void removeUserProgramFinders​(List<com.smeup.rpgparser.rpginterop.RpgProgramFinder> programFinders)
        Remove from programFinders all instances of UserProgramFinder and ResourceProgramFinder
      • clearErrorMessage

        public static String clearErrorMessage​(String errorMessage)
        Clear the errorMessage contained in ErrorEvent
      • createDebuggingSrcMgr

        public static DebuggingSourcesMgr createDebuggingSrcMgr​(com.smeup.jardis.core.dap.handler.Context context,
                                                                com.smeup.jardis.core.JardisSession jardisSession)
      • createDebuggingSrcMgr

        public static DebuggingSourcesMgr createDebuggingSrcMgr​(com.smeup.jardis.core.dap.handler.Context context,
                                                                JarikoDebugeeContext jarikoDebugeeContext,
                                                                com.smeup.jardis.core.JardisSession jardisSession)
      • getJarikoVersion

        public static com.smeup.rpgparser.interpreter.JarikoVersion getJarikoVersion()