@startuml

/' diagram meta data start
config=CallConfiguration;
{
  "rootMethod": "s.praveen.cms.controller.CourseMgmtController#updateCourseById(long,CourseRequest)",
  "projectClassification": {
    "searchMode": "OpenProject", // OpenProject, AllProjects
    "includedProjects": "",
    "pathEndKeywords": "*.impl",
    "isClientPath": "",
    "isClientName": "",
    "isTestPath": "",
    "isTestName": "",
    "isMappingPath": "",
    "isMappingName": "",
    "isDataAccessPath": "",
    "isDataAccessName": "",
    "isDataStructurePath": "",
    "isDataStructureName": "",
    "isInterfaceStructuresPath": "",
    "isInterfaceStructuresName": "",
    "isEntryPointPath": "",
    "isEntryPointName": "",
    "treatFinalFieldsAsMandatory": false
  },
  "graphRestriction": {
    "classPackageExcludeFilter": "",
    "classPackageIncludeFilter": "",
    "classNameExcludeFilter": "",
    "classNameIncludeFilter": "",
    "methodNameExcludeFilter": "",
    "methodNameIncludeFilter": "",
    "removeByInheritance": "", // inheritance/annotation based filtering is done in a second step
    "removeByAnnotation": "",
    "removeByClassPackage": "", // cleanup the graph after inheritance/annotation based filtering is done
    "removeByClassName": "",
    "cutMappings": false,
    "cutEnum": true,
    "cutTests": true,
    "cutClient": true,
    "cutDataAccess": true,
    "cutInterfaceStructures": true,
    "cutDataStructures": true,
    "cutGetterAndSetter": true,
    "cutConstructors": true
  },
  "graphTraversal": {
    "forwardDepth": 3,
    "backwardDepth": 3,
    "classPackageExcludeFilter": "",
    "classPackageIncludeFilter": "",
    "classNameExcludeFilter": "",
    "classNameIncludeFilter": "",
    "methodNameExcludeFilter": "",
    "methodNameIncludeFilter": "",
    "hideMappings": false,
    "hideDataStructures": false,
    "hidePrivateMethods": true,
    "hideInterfaceCalls": true, // indirection: implementation -> interface (is hidden) -> implementation
    "onlyShowApplicationEntryPoints": false, // root node is included
    "useMethodCallsForStructureDiagram": "ForwardOnly" // ForwardOnly, BothDirections, No
  },
  "details": {
    "aggregation": "GroupByClass", // ByClass, GroupByClass, None
    "showMethodParametersTypes": false,
    "showMethodParametersNames": false,
    "showMethodReturnType": false,
    "showPackageLevels": 2,
    "showCallOrder": false,
    "edgeMode": "MethodsOnly", // TypesOnly, MethodsOnly, TypesAndMethods, MethodsAndDirectTypeUsage
    "showDetailedClassStructure": false
  },
  "rootClass": "s.praveen.cms.controller.CourseMgmtController",
  "extensionCallbackMethod": "" // qualified.class.name#methodName - signature: public static String method(String)
}
diagram meta data end '/



digraph g {
    rankdir="LR"
    splines=polyline
    

'nodes 
subgraph cluster_321882441 { 
   	label=praveen
	labeljust=l
	fillcolor="#ececec"
	style=filled
   
   subgraph cluster_1915834990 { 
   	label=cms
	labeljust=l
	fillcolor="#d8d8d8"
	style=filled
   
   subgraph cluster_1503865723 { 
   	label=CourseMgmtServiceImpl
	labeljust=l
	fillcolor=white
	style=filled
   
   CourseMgmtServiceImpl105350576XXXgetCourseById3327612[
	label="+ getCourseById()"
	style=filled
	fillcolor=white
	tooltip="CourseMgmtServiceImpl

&#10;  Gets course by id.&#10; &#10;  @param id the id&#10;  @return the course by id&#10;  @throws EnityNotFoundException the enity not found exception&#10; "
	fontcolor=darkgreen
];

CourseMgmtServiceImpl105350576XXXupdateCourseById370737436[
	label="+ updateCourseById()"
	style=filled
	fillcolor=white
	tooltip="CourseMgmtServiceImpl

&#10;  Update course by id course.&#10; &#10;  @param id the id&#10;  @param request the request&#10;  @return the course&#10;  @throws EnityNotFoundException the enity not found exception&#10; "
	fontcolor=darkgreen
];
} 

subgraph cluster_189740563 { 
   	label=CourseMgmtController
	labeljust=l
	fillcolor=white
	style=filled
   
   CourseMgmtController1177992531XXXupdateCourseById370737436[
	label="+ updateCourseById()"
	style=filled
	fillcolor=white
	tooltip="CourseMgmtController

&#10;  Update course by id response entity.&#10; &#10;  @param id the id&#10;  @param request the request&#10;  @return the response entity&#10; "
	penwidth=4
	fontcolor=darkgreen
];
} 

subgraph cluster_864202559 { 
   	label=CourseRequest
	labeljust=l
	fillcolor=white
	style=filled
   
   CourseRequest1044045465XXXcourseName0[
	label="+ courseName()"
	style=filled
	fillcolor=white
	tooltip="CourseRequest

null"
	fontcolor=darkgreen
];
} 
} 
} 

'edges    
CourseMgmtController1177992531XXXupdateCourseById370737436 -> CourseMgmtServiceImpl105350576XXXupdateCourseById370737436;
CourseMgmtServiceImpl105350576XXXupdateCourseById370737436 -> CourseMgmtServiceImpl105350576XXXgetCourseById3327612;
CourseMgmtServiceImpl105350576XXXupdateCourseById370737436 -> CourseRequest1044045465XXXcourseName0;
    
}
@enduml