test_class.file: proxy/src/test/java/com/wavefront/agent/queueing/SQSQueueFactoryImplTest.java
test_class.identifier: SQSQueueFactoryImplTest
test_case.body: @Test
    public void testQueueTemplate() {
      // we have to have all three
      assertTrue(SQSQueueFactoryImpl.isValidSQSTemplate("{{id}}{{entity}}{{port}}"));
      assertTrue(SQSQueueFactoryImpl.isValidSQSTemplate(new ProxyConfig().getSqsQueueNameTemplate()));
  
      // Typo or missing one (or all) of the three keys in some fashion
      assertFalse(SQSQueueFactoryImpl.isValidSQSTemplate("{{id}{{entity}}{{port}}"));
      assertFalse(SQSQueueFactoryImpl.isValidSQSTemplate("{{id}}{entity}}{{port}}"));
      assertFalse(SQSQueueFactoryImpl.isValidSQSTemplate("{{id}}{{entity}}{port}}"));
      assertFalse(SQSQueueFactoryImpl.isValidSQSTemplate(""));
      assertFalse(SQSQueueFactoryImpl.isValidSQSTemplate("{{id}}"));
      assertFalse(SQSQueueFactoryImpl.isValidSQSTemplate("{{entity}}"));
      assertFalse(SQSQueueFactoryImpl.isValidSQSTemplate("{{port}}"));
    }
test_case.class_method_signature: SQSQueueFactoryImplTest.testQueueTemplate()
test_case.full_signature: @Test public void testQueueTemplate()
test_case.identifier: testQueueTemplate
test_case.invocations: assertTrue isValidSQSTemplate assertTrue isValidSQSTemplate getSqsQueueNameTemplate assertFalse isValidSQSTemplate assertFalse isValidSQSTemplate assertFalse isValidSQSTemplate assertFalse isValidSQSTemplate assertFalse isValidSQSTemplate assertFalse isValidSQSTemplate assertFalse isValidSQSTemplate
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testQueueTemplate()
focal_class.declarator: logger =
        Logger.getLogger(SQSQueueFactoryImpl.class.getCanonicalName())
focal_class.modifier: private static final
focal_class.original_string: private static final Logger logger =
        Logger.getLogger(SQSQueueFactoryImpl.class.getCanonicalName());
focal_class.type: Logger
focal_class.var_name: logger
focal_class.declarator: taskQueues = new ConcurrentHashMap<>()
focal_class.modifier: private final
focal_class.original_string: private final Map<HandlerKey, Map<Integer, TaskQueue<?>>> taskQueues = new ConcurrentHashMap<>();
focal_class.type: Map<HandlerKey, Map<Integer, TaskQueue<?>>>
focal_class.var_name: taskQueues
focal_class.declarator: queueNameTemplate
focal_class.modifier: private final
focal_class.original_string: private final String queueNameTemplate;
focal_class.type: String
focal_class.var_name: queueNameTemplate
focal_class.declarator: region
focal_class.modifier: private final
focal_class.original_string: private final String region;
focal_class.type: String
focal_class.var_name: region
focal_class.declarator: queueId
focal_class.modifier: private final
focal_class.original_string: private final String queueId;
focal_class.type: String
focal_class.var_name: queueId
focal_class.declarator: purgeBuffer
focal_class.modifier: private final
focal_class.original_string: private final boolean purgeBuffer;
focal_class.type: boolean
focal_class.var_name: purgeBuffer
focal_class.declarator: queues = new ConcurrentHashMap<>()
focal_class.modifier: private final
focal_class.original_string: private final Map<String, String> queues = new ConcurrentHashMap<>();
focal_class.type: Map<String, String>
focal_class.var_name: queues
focal_class.declarator: client
focal_class.modifier: private final
focal_class.original_string: private final AmazonSQS client;
focal_class.type: AmazonSQS
focal_class.var_name: client
focal_class.file: proxy/src/main/java/com/wavefront/agent/queueing/SQSQueueFactoryImpl.java
focal_class.identifier: SQSQueueFactoryImpl
focal_class.interfaces: implements TaskQueueFactory
focal_class.class_method_signature: SQSQueueFactoryImpl.SQSQueueFactoryImpl(String template, String region, String queueId, boolean purgeBuffer)
focal_class.full_signature: public  SQSQueueFactoryImpl(String template, String region, String queueId, boolean purgeBuffer)
focal_class.identifier: SQSQueueFactoryImpl
focal_class.modifiers: public
focal_class.parameters: (String template, String region, String queueId, boolean purgeBuffer)
focal_class.signature:  SQSQueueFactoryImpl(String template, String region, String queueId, boolean purgeBuffer)
focal_class.class_method_signature: SQSQueueFactoryImpl.getTaskQueue(@Nonnull HandlerKey key,
                                                                       int threadNum)
focal_class.full_signature: @Override public TaskQueue<T> getTaskQueue(@Nonnull HandlerKey key,
                                                                       int threadNum)
focal_class.identifier: getTaskQueue
focal_class.modifiers: @Override public
focal_class.parameters: (@Nonnull HandlerKey key,
                                                                       int threadNum)
focal_class.return: TaskQueue<T>
focal_class.signature: TaskQueue<T> getTaskQueue(@Nonnull HandlerKey key,
                                                                       int threadNum)
focal_class.class_method_signature: SQSQueueFactoryImpl.createTaskQueue(
        @Nonnull HandlerKey handlerKey)
focal_class.full_signature: private TaskQueue<T> createTaskQueue(
        @Nonnull HandlerKey handlerKey)
focal_class.identifier: createTaskQueue
focal_class.modifiers: private
focal_class.parameters: (
        @Nonnull HandlerKey handlerKey)
focal_class.return: TaskQueue<T>
focal_class.signature: TaskQueue<T> createTaskQueue(
        @Nonnull HandlerKey handlerKey)
focal_class.class_method_signature: SQSQueueFactoryImpl.getQueueName(HandlerKey handlerKey)
focal_class.full_signature: @VisibleForTesting public String getQueueName(HandlerKey handlerKey)
focal_class.identifier: getQueueName
focal_class.modifiers: @VisibleForTesting public
focal_class.parameters: (HandlerKey handlerKey)
focal_class.return: String
focal_class.signature: String getQueueName(HandlerKey handlerKey)
focal_class.class_method_signature: SQSQueueFactoryImpl.getOrCreateQueue(String queueName)
focal_class.full_signature: private String getOrCreateQueue(String queueName)
focal_class.identifier: getOrCreateQueue
focal_class.modifiers: private
focal_class.parameters: (String queueName)
focal_class.return: String
focal_class.signature: String getOrCreateQueue(String queueName)
focal_class.class_method_signature: SQSQueueFactoryImpl.isValidSQSTemplate(String template)
focal_class.full_signature: public static boolean isValidSQSTemplate(String template)
focal_class.identifier: isValidSQSTemplate
focal_class.modifiers: public static
focal_class.parameters: (String template)
focal_class.return: boolean
focal_class.signature: boolean isValidSQSTemplate(String template)
focal_method.body: public static boolean isValidSQSTemplate(String template) {
      return template.contains("{{id}}") && template.contains("{{entity}}") &&
          template.contains("{{port}}");
    }
focal_method.class_method_signature: SQSQueueFactoryImpl.isValidSQSTemplate(String template)
focal_method.full_signature: public static boolean isValidSQSTemplate(String template)
focal_method.identifier: isValidSQSTemplate
focal_method.invocations: contains contains contains
focal_method.modifiers: public static
focal_method.parameters: (String template)
focal_method.return: boolean
focal_method.signature: boolean isValidSQSTemplate(String template)