albirar/albirar-communications

View on GitHub

Showing 19 of 19 total issues

Method javaMailSender has 38 lines of code (exceeds 25 allowed). Consider refactoring.
Open

    @Bean
    @ConditionalOnMissingBean
    public JavaMailSender javaMailSender(ConfigurableEnvironment env) {
        JavaMailSenderImpl jm;
        List<EnumerablePropertySource<?>> propSrc;

    Method processMessage has 33 lines of code (exceeds 25 allowed). Consider refactoring.
    Open

        @Override
        protected void processMessage(String messageId, MessageBean message) {
            MessageStatusBean r;
            LOGGER.info("Sending SMS for message {}", message);
            

      Method processMessage has 33 lines of code (exceeds 25 allowed). Consider refactoring.
      Open

          @Override
          protected void processMessage(String messageId, MessageBean message) {
              MessageStatusBean r;
              
              LOGGER.debug("Sending email for message {}", message);

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

                } catch(ProviderException e) {
                    String errMsg;
                    
                    errMsg = String.format("On preparing or sending the mail message for %s (%s)", message, e.getMessage());
                    LOGGER.error(errMsg, e);
        core/src/main/java/cat/albirar/communications/core/processors/impl/SmsSenderProcessor.java on lines 76..88

        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 80.

        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

                } catch(ProviderException e) {
                    String errMsg;
                    
                    errMsg = String.format("On preparing or sending the SMS message for %s (%s)", message, e.getMessage());
                    LOGGER.error(errMsg, e);
        core/src/main/java/cat/albirar/communications/core/processors/impl/EmailSenderProcessor.java on lines 78..90

        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 80.

        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

        Method pushMessage has 29 lines of code (exceeds 25 allowed). Consider refactoring.
        Open

            @Override
            public String pushMessage(MessageBean message) {
                CorrelationData crlt;
                String rKey;
                MessageProperties mp;

          Method sendSms has 27 lines of code (exceeds 25 allowed). Consider refactoring.
          Open

              @Override
              public void sendSms(String messageId, ContactBean from, ContactBean recipient, String message) {
                  SmsMessage msg;
                  List<SmsMessage> body;
                  String s;

            Method sendEmail has 7 arguments (exceeds 4 allowed). Consider refactoring.
            Open

                public void sendEmail(String messageId, ContactBean from, ContactBean recipient, String subject, String message, String mediaType, String charset) {

              Method sendEmail has 7 arguments (exceeds 4 allowed). Consider refactoring.
              Open

                  public void sendEmail(@NotBlank String messageId, @NotNull @Valid ContactBean from, @NotNull @Valid ContactBean recipient, @NotBlank String subject, @NotBlank String message, @NotBlank String mediaType, @NotBlank String charset);

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

                            } else {
                                LOGGER.error("No email provider was configured!");
                                r = MessageStatusBean.copyBuilder(message)
                                        .status(EStatusMessage.ERROR)
                                        .messageId(messageId)
                core/src/main/java/cat/albirar/communications/core/processors/impl/SmsSenderProcessor.java on lines 66..75

                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 52.

                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

                            } else {
                                LOGGER.error("No sms provider was configured!");
                                r = MessageStatusBean.copyBuilder(message)
                                        .status(EStatusMessage.ERROR)
                                        .messageId(messageId)
                core/src/main/java/cat/albirar/communications/core/processors/impl/EmailSenderProcessor.java on lines 68..77

                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 52.

                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

                        } catch (AmqpException e) {
                            String s;
                            s = String.format("Error on send the message %s to exchange %s and queue %s", message, exchangeName, queueName);
                            LOGGER.error(s, e);
                            throw new ServiceException(s, e);
                core/src/main/java/cat/albirar/communications/core/processors/impl/AbstractSenderProcessor.java on lines 130..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 46.

                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

                        } catch (MessageConversionException e) {
                            String s;
                            s = String.format("Error converting status message %s to AMQP message to exchange %s and queue %s", message, exchangeName, queueName);
                            LOGGER.error(s, e);
                            throw new ServiceException(s, e);
                core/src/main/java/cat/albirar/communications/core/processors/impl/AbstractSenderProcessor.java on lines 135..140

                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 46.

                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

                        } catch (AmqpException e) {
                            String s;
                            s = String.format("Cannot push message %s onto %s", message, rKey);
                            LOGGER.error(s, e);
                            throw new ServiceException(s, e);
                core/src/main/java/cat/albirar/communications/core/services/impl/CommunicationServiceImpl.java on lines 109..114

                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 44.

                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

                        } catch (MessageConversionException e) {
                            String s;
                            s = String.format("Error converting message %s to AMQP message with %s destination", message, rKey);
                            LOGGER.error(s, e);
                            throw new ServiceException(s, e);
                core/src/main/java/cat/albirar/communications/core/services/impl/CommunicationServiceImpl.java on lines 114..119

                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 44.

                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 4 locations. Consider refactoring.
                Open

                    @Bean
                    public SimpleMessageListenerContainer listenerSendSms(ConnectionFactory connectionFactory
                            , SmsSenderProcessor smsSenderProcessor
                            , @Qualifier("smsSendQueue") Queue smsSendQueue) {
                        SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 215..224
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 236..245
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 247..256

                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 42.

                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 4 locations. Consider refactoring.
                Open

                    @Bean
                    public SimpleMessageListenerContainer listenerReportSms(ConnectionFactory connectionFactory
                            , SmsReportProcessor smsReportProcessor
                            , @Qualifier(IPropertiesComm.QUEUE_REPORT_SMS) Queue smsReportQueue) {
                        SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 215..224
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 226..235
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 236..245

                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 42.

                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 4 locations. Consider refactoring.
                Open

                    @Bean
                    public SimpleMessageListenerContainer listenerSendEmail(ConnectionFactory connectionFactory
                            , EmailSenderProcessor emailSenderProcessor
                            , @Qualifier("emailSendQueue") Queue emailSendQueue) {
                        SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 226..235
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 236..245
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 247..256

                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 42.

                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 4 locations. Consider refactoring.
                Open

                    @Bean
                    public SimpleMessageListenerContainer listenerReportEmail(ConnectionFactory connectionFactory
                            , EmailReportProcessor emailReportProcessor
                            , @Qualifier(IPropertiesComm.QUEUE_REPORT_EMAIL) Queue emailReportQueue) {
                        SimpleMessageListenerContainer container = new SimpleMessageListenerContainer();
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 215..224
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 226..235
                core/src/main/java/cat/albirar/communications/core/configuration/AlbirarCommunicationsConfiguration.java on lines 247..256

                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 42.

                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

                Severity
                Category
                Status
                Source
                Language