Uses of Class
edu.university.ecs.lab.common.models.ir.Microservice
Package
Description
Contains utility classes for file management, JSON handling, and source code parsing.
Provides services for detecting and analyzing various anti-patterns in microservices architecture.
Provides classes and enums for representing architectural rules within the microservice system.
This package contains classes that represent models used for calculating various metrics related to microservices
and service dependency graphs.
This package provides services for extracting intermediate representations (IR) from remote repositories.
-
Uses of Microservice in edu.university.ecs.lab.common.models.ir
Modifier and TypeFieldDescriptionprivate Set<Microservice>
MicroserviceSystem.microservices
Set of microservices in the systemModifier and TypeMethodDescriptionMicroserviceSystem.findMicroserviceByPath
(String path) Returns the microservice whose path is the start of the passed pathModifier and TypeMethodDescriptionvoid
MicroserviceSystem.adopt
(Microservice microservice) Given a new or modified microservice, we must adopt awaiting orphans based on their file paths containing the microservices (folder) pathvoid
MicroserviceSystem.orphanize
(Microservice microservice) Given an existing microservice, if it must now be orphanized then all JClasses belonging to that service will be added to the system's pool of orphans for later usevoid
MicroserviceSystem.orphanizeAndAdopt
(Microservice microservice) -
Uses of Microservice in edu.university.ecs.lab.common.models.sdg
Modifier and TypeMethodDescriptioncom.google.gson.JsonElement
ServiceDependencyGraph.MicroserviceSerializer.serialize
(Microservice microservice, Type type, com.google.gson.JsonSerializationContext jsonSerializationContext) -
Uses of Microservice in edu.university.ecs.lab.common.utils
Modifier and TypeMethodDescriptionprivate static Map<Microservice,
Set<JClass>> FlowUtils.getAllMicroserviceControllers
(MicroserviceSystem microserviceSystem) This method returns a map of microservices to their controller classesModifier and TypeMethodDescriptionFlowUtils.generateNewFlows
(Microservice microservice, List<JClass> controllers) Modifier and TypeMethodDescriptionFlowUtils.generateNewFlows
(Map<Microservice, Set<JClass>> controllerMap) This method generates the base flows -
Uses of Microservice in edu.university.ecs.lab.detection.antipatterns.services
Modifier and TypeFieldDescriptionprivate Map<Microservice,
Microservice> CyclicDependencyMSLevelService.parentMap
private Map<Microservice,
Microservice> CyclicDependencyMSLevelService.parentMap
private Set<Microservice>
CyclicDependencyMSLevelService.recStack
private Set<Microservice>
CyclicDependencyMSLevelService.visited
Modifier and TypeMethodDescriptionprivate void
ServiceChainMSLevelService.dfs
(Microservice currentNode, Set<Microservice> pathVisited) Depth-first search (DFS) to explore and detect service chains starting from the currentNode.private void
CyclicDependencyMSLevelService.findCycles
(Microservice currentNode) Checks if there is a cycle starting from the current node.CyclicDependencyMSLevelService.reconstructCyclePath
(Microservice startNode, Microservice currentNode) Reconstructs the cycle path from startNode to currentNode using the parentMap.Modifier and TypeMethodDescriptionprivate void
ServiceChainMSLevelService.dfs
(Microservice currentNode, Set<Microservice> pathVisited) Depth-first search (DFS) to explore and detect service chains starting from the currentNode. -
Uses of Microservice in edu.university.ecs.lab.detection.architecture.models
Modifier and TypeMethodDescriptionprivate static void
AR21.dfs
(Microservice currentNode, Map<Microservice, Set<Microservice>> adjacencyList, Set<Microservice> visited, Set<String> cluster) Performs Depth-First Search (DFS) to traverse and collect all nodes in the current cluster of wrong cuts.Modifier and TypeMethodDescriptionprivate static void
AR21.dfs
(Microservice currentNode, Map<Microservice, Set<Microservice>> adjacencyList, Set<Microservice> visited, Set<String> cluster) Performs Depth-First Search (DFS) to traverse and collect all nodes in the current cluster of wrong cuts.private static void
AR21.dfs
(Microservice currentNode, Map<Microservice, Set<Microservice>> adjacencyList, Set<Microservice> visited, Set<String> cluster) Performs Depth-First Search (DFS) to traverse and collect all nodes in the current cluster of wrong cuts.private static void
AR21.dfs
(Microservice currentNode, Map<Microservice, Set<Microservice>> adjacencyList, Set<Microservice> visited, Set<String> cluster) Performs Depth-First Search (DFS) to traverse and collect all nodes in the current cluster of wrong cuts. -
Uses of Microservice in edu.university.ecs.lab.detection.metrics.models
Modifier and TypeFieldDescriptionprivate final List<Set<Microservice>>
ConnectedComponentsModularity.SCC
Strongly connected components of the graph. -
Uses of Microservice in edu.university.ecs.lab.intermediate.create.services
Modifier and TypeMethodDescriptionIRExtractionService.recursivelyScanFiles
(String rootMicroservicePath) Recursively scan the files in the given repository path and extract the endpoints and dependencies for a single microservice.Modifier and TypeMethodDescriptionIRExtractionService.cloneAndScanServices()
Clone remote repositories and scan through each local repo and extract endpoints/callsModifier and TypeMethodDescriptionvoid
IRExtractionService.scanDirectory
(File directory, Microservice microservice) Recursively scan the given directory for files and extract the endpoints and dependencies.Modifier and TypeMethodDescriptionprivate void
IRExtractionService.writeToFile
(Set<Microservice> microservices, String fileName) Write each service and endpoints to intermediate representation