evalphobia/aws-sdk-go-v2-wrapper

View on GitHub
pinpoint/type_segment.go

Summary

Maintainability
B
5 hrs
Test Coverage

Similar blocks of code found in 4 locations. Consider refactoring.
Open

func newSegmentsResponse(o *SDK.SegmentsResponse) SegmentsResponse {
    result := SegmentsResponse{}
    if o == nil {
        return result
    }
Severity: Major
Found in pinpoint/type_segment.go and 3 other locations - About 1 hr to fix
pinpoint/type_application.go on lines 12..31
pinpoint/type_job.go on lines 52..72
pinpoint/type_template.go on lines 299..318

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 161.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

func newSegmentDimensions(o *SDK.SegmentDimensions) SegmentDimensions {
    result := SegmentDimensions{}
    if o == nil {
        return result
    }
Severity: Major
Found in pinpoint/type_segment.go and 1 other location - About 1 hr to fix
pinpoint/type_segment.go on lines 86..99

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 153.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

func newSegmentDemographics(o *SDK.SegmentDemographics) SegmentDemographics {
    result := SegmentDemographics{}
    if o == nil {
        return result
    }
Severity: Major
Found in pinpoint/type_segment.go and 1 other location - About 1 hr to fix
pinpoint/type_segment.go on lines 122..135

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 153.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 10 locations. Consider refactoring.
Open

func (r SegmentReference) ToSDK() SDK.SegmentReference {
    o := SDK.SegmentReference{}

    if r.ID != "" {
        o.Id = pointers.String(r.ID)
Severity: Major
Found in pinpoint/type_segment.go and 9 other locations - About 40 mins to fix
dynamodb/type.go on lines 1133..1143
pinpointemail/type.go on lines 14..24
pinpointemail/type.go on lines 26..36
s3/type.go on lines 574..584
s3/type.go on lines 659..669
s3/type.go on lines 704..714
ses/type.go on lines 87..97
sqs/type.go on lines 100..110
ssm/type.go on lines 220..230

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 112.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 7 locations. Consider refactoring.
Open

func newSegmentReference(o *SDK.SegmentReference) SegmentReference {
    result := SegmentReference{}
    if o == nil {
        return result
    }
Severity: Major
Found in pinpoint/type_segment.go and 6 other locations - About 40 mins to fix
athena/type.go on lines 111..124
pinpoint/type_campaign.go on lines 644..657
pinpoint/type_campaign.go on lines 764..777
pinpoint/type_template.go on lines 228..241
s3/type.go on lines 644..657
ses/type.go on lines 152..165

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 109.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

exported method SegmentDimensions.ToSDK should have comment or be unexported
Open

func (r SegmentDimensions) ToSDK() SDK.SegmentDimensions {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentGroupList should have comment or be unexported
Open

type SegmentGroupList struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentsResponse should have comment or be unexported
Open

type SegmentsResponse struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentDimensions should have comment or be unexported
Open

type SegmentDimensions struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported method SegmentGroupList.ToSDK should have comment or be unexported
Open

func (r SegmentGroupList) ToSDK() *SDK.SegmentGroupList {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentLocation should have comment or be unexported
Open

type SegmentLocation struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentResponse should have comment or be unexported
Open

type SegmentResponse struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentDemographics should have comment or be unexported
Open

type SegmentDemographics struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type WriteSegmentRequest should have comment or be unexported
Open

type WriteSegmentRequest struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentBehaviors should have comment or be unexported
Open

type SegmentBehaviors struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported method SegmentBehaviors.ToSDK should have comment or be unexported
Open

func (r SegmentBehaviors) ToSDK() *SDK.SegmentBehaviors {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported method SegmentGroup.ToSDK should have comment or be unexported
Open

func (r SegmentGroup) ToSDK() SDK.SegmentGroup {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported method WriteSegmentRequest.ToSDK should have comment or be unexported
Open

func (r WriteSegmentRequest) ToSDK() *SDK.WriteSegmentRequest {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported method GPSPointDimension.ToSDK should have comment or be unexported
Open

func (r GPSPointDimension) ToSDK() *SDK.GPSPointDimension {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported method SegmentDemographics.ToSDK should have comment or be unexported
Open

func (r SegmentDemographics) ToSDK() *SDK.SegmentDemographics {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported method SegmentReference.ToSDK should have comment or be unexported
Open

func (r SegmentReference) ToSDK() SDK.SegmentReference {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type GPSPointDimension should have comment or be unexported
Open

type GPSPointDimension struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentReference should have comment or be unexported
Open

type SegmentReference struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentImportResource should have comment or be unexported
Open

type SegmentImportResource struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported method SegmentLocation.ToSDK should have comment or be unexported
Open

func (r SegmentLocation) ToSDK() *SDK.SegmentLocation {
Severity: Minor
Found in pinpoint/type_segment.go by golint

exported type SegmentGroup should have comment or be unexported
Open

type SegmentGroup struct {
Severity: Minor
Found in pinpoint/type_segment.go by golint

There are no issues that match your filters.

Category
Status