aws-solutions / video-on-demand-on-aws
Duplication

Places in code with 6 or more lines that are exactly the same.

Intro
  • For duplication, we look at places in code where there are 6 or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 32% duplication:
    • 3,721 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 1,222 duplicated lines
  • 695 duplicates
system32% (1,222 lines)
Duplication per Extension
yaml38% (670 lines)
js29% (552 lines)
Duplication per Component (primary)
deployment38% (670 lines)
source/custom-resource30% (258 lines)
source/output-validate26% (49 lines)
source/profiler41% (34 lines)
source/dynamo56% (34 lines)
source/sns-notification31% (25 lines)
source/step-functions31% (25 lines)
source/encode12% (25 lines)
source/input-validate32% (25 lines)
source/media-package-assets35% (25 lines)
source/archive-source51% (25 lines)
source/sqs-publish46% (21 lines)
source/error-handler9% (6 lines)
source/mediainfo0% (0 lines)

Duplication Between Components (50+ lines)

G source/dynamo source/dynamo source/profiler source/profiler source/dynamo--source/profiler 68 source/output-validate source/output-validate source/dynamo--source/output-validate 62 source/encode source/encode source/dynamo--source/encode 50 source/sns-notification source/sns-notification source/dynamo--source/sns-notification 50 source/step-functions source/step-functions source/dynamo--source/step-functions 50 source/input-validate source/input-validate source/dynamo--source/input-validate 50 source/media-package-assets source/media-package-assets source/dynamo--source/media-package-assets 50 source/profiler--source/sns-notification 50 source/profiler--source/step-functions 50 source/output-validate--source/profiler 62 source/output-validate--source/sns-notification 50 source/output-validate--source/step-functions 50 source/encode--source/profiler 50 source/encode--source/output-validate 50 source/encode--source/sns-notification 50 source/encode--source/step-functions 50 source/encode--source/input-validate 50 source/encode--source/media-package-assets 50 source/sns-notification--source/step-functions 50 source/archive-source source/archive-source source/archive-source--source/dynamo 50 source/archive-source--source/profiler 50 source/archive-source--source/output-validate 50 source/archive-source--source/encode 50 source/archive-source--source/sns-notification 50 source/archive-source--source/step-functions 50 source/archive-source--source/input-validate 50 source/archive-source--source/media-package-assets 50 source/input-validate--source/profiler 50 source/input-validate--source/output-validate 50 source/input-validate--source/sns-notification 50 source/input-validate--source/step-functions 50 source/input-validate--source/media-package-assets 50 source/media-package-assets--source/profiler 50 source/media-package-assets--source/output-validate 50 source/media-package-assets--source/sns-notification 50 source/media-package-assets--source/step-functions 50

Download: SVG DOT (open online Graphviz editor)

Open 3D force graph...

Show more details on duplication between components...
Longest Duplicates
The list of 20 longest duplicates.
See data for all 695 duplicates...
Size#FoldersFilesLinesCode
25 x 2 source/encode/lib
source/sns-notification/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/output-validate/lib
source/sns-notification/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/output-validate/lib
source/step-functions/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/dynamo/lib
source/encode/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/archive-source/lib
source/input-validate/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/archive-source/lib
source/encode/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/media-package-assets/lib
source/profiler/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/sns-notification/lib
source/step-functions/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/encode/lib
source/output-validate/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/input-validate/lib
source/media-package-assets/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/archive-source/lib
source/dynamo/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/input-validate/lib
source/sns-notification/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/dynamo/lib
source/media-package-assets/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/archive-source/lib
source/media-package-assets/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/dynamo/lib
source/input-validate/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/archive-source/lib
source/output-validate/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/output-validate/lib
source/profiler/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/input-validate/lib
source/step-functions/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/media-package-assets/lib
source/output-validate/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view
25 x 2 source/dynamo/lib
source/profiler/lib
error.js
error.js
14:45 (100%)
14:45 (100%)
view