awslabs / aws-iot-core-websockets
Unit Size

The distribution of size of units (measured in lines of code).

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 34 units with 248 lines of code in units (49.1% of code).
    • 1 very long units (103 lines of code)
    • 0 long units (0 lines of code)
    • 0 medium size units (0 lines of code)
    • 0 small units (0 lines of code)
    • 33 very small units (145 lines of code)
41% | 0% | 0% | 0% | 58%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
java41% | 0% | 0% | 0% | 58%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
src/main/java/com/awslabs/aws/iot/websockets55% | 0% | 0% | 0% | 44%
src/main/java/com/awslabs/aws/iot/websockets/data0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
public String getMqttOverWebsocketsUriString()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
103 11 1
private String getEndpointAddressForRegion()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
10 2 1
public Map toMap()
in src/main/java/com/awslabs/aws/iot/websockets/data/ScopeDownPolicyStatement.java
9 1 0
public String toString()
in src/main/java/com/awslabs/aws/iot/websockets/data/ScopeDownPolicy.java
7 1 0
public void connect()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
6 1 2
public Optional connect()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
6 1 4
private IotClient getIotClient()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
6 1 1
public ScopeDownPolicyStatement()
in src/main/java/com/awslabs/aws/iot/websockets/data/ScopeDownPolicyStatement.java
5 1 3
public MqttClient getMqttClient()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
5 1 1
public MqttAsyncClient getMqttAsyncClient()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
5 1 1
public void connect()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
5 1 1
public Optional connect()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
5 1 1
private String sha256()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
5 1 1
private String bytesToHex()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
5 2 1
public ScopeDownPolicy()
in src/main/java/com/awslabs/aws/iot/websockets/data/ScopeDownPolicy.java
4 1 2
public ScopeDownPolicy()
in src/main/java/com/awslabs/aws/iot/websockets/data/ScopeDownPolicy.java
4 1 1
private void setUsernamePassword()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
4 1 2
private String getDateStamp()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
4 1 1
private String getAmzDate()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
4 1 1
private Region getDefaultRegionString()
in src/main/java/com/awslabs/aws/iot/websockets/BasicMqttOverWebsocketsProvider.java
4 1 0