test_class.declarator: INDEX_NAME = "index_name"
test_class.modifier: private static final
test_class.original_string: private static final String INDEX_NAME = "index_name";
test_class.type: String
test_class.var_name: INDEX_NAME
test_class.declarator: UNIQUE = true
test_class.modifier: private static final
test_class.original_string: private static final boolean UNIQUE = true;
test_class.type: boolean
test_class.var_name: UNIQUE
test_class.declarator: BACKGROUND = true
test_class.modifier: private static final
test_class.original_string: private static final boolean BACKGROUND = true;
test_class.type: boolean
test_class.var_name: BACKGROUND
test_class.declarator: FIELD_1_NAME = "field1"
test_class.modifier: private static final
test_class.original_string: private static final String FIELD_1_NAME = "field1";
test_class.type: String
test_class.var_name: FIELD_1_NAME
test_class.declarator: FIELD_2_NAME = "field2"
test_class.modifier: private static final
test_class.original_string: private static final String FIELD_2_NAME = "field2";
test_class.type: String
test_class.var_name: FIELD_2_NAME
test_class.file: services/utils/persistence/src/test/java/org/eclipse/ditto/services/utils/persistence/mongo/indices/IndexFactoryTest.java
test_class.identifier: IndexFactoryTest
test_case.body: @Test
      public void newInstanceWithCustomKeys() {
          final IndexKey key1 = DefaultIndexKey.of(FIELD_1_NAME, IndexDirection.ASCENDING);
          final IndexKey key2 = DefaultIndexKey.of(FIELD_2_NAME, IndexDirection.DESCENDING);
          final List<IndexKey> keys = Arrays.asList(key1, key2);
  
          final Index actual = IndexFactory.newInstanceWithCustomKeys(INDEX_NAME, keys, UNIQUE);
  
          final BsonDocument expectedKeys = new BsonDocument();
          expectedKeys.put(FIELD_1_NAME, IndexDirection.ASCENDING.getBsonInt());
          expectedKeys.put(FIELD_2_NAME, IndexDirection.DESCENDING.getBsonInt());
          final Index expected = Index.of(expectedKeys, INDEX_NAME, UNIQUE, UNIQUE, BACKGROUND);
          assertThat(actual).isEqualTo(expected);
      }
test_case.class_method_signature: IndexFactoryTest.newInstanceWithCustomKeys()
test_case.full_signature: @Test public void newInstanceWithCustomKeys()
test_case.identifier: newInstanceWithCustomKeys
test_case.invocations: of of asList newInstanceWithCustomKeys put getBsonInt put getBsonInt of isEqualTo assertThat
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void newInstanceWithCustomKeys()
focal_class.declarator: BACKGROUND_OPTION_DEFAULT = true
focal_class.modifier: private static final
focal_class.original_string: private static final boolean BACKGROUND_OPTION_DEFAULT = true;
focal_class.type: boolean
focal_class.var_name: BACKGROUND_OPTION_DEFAULT
focal_class.file: services/utils/persistence/src/main/java/org/eclipse/ditto/services/utils/persistence/mongo/indices/IndexFactory.java
focal_class.identifier: IndexFactory
focal_class.class_method_signature: IndexFactory.IndexFactory()
focal_class.full_signature: private  IndexFactory()
focal_class.identifier: IndexFactory
focal_class.modifiers: private
focal_class.parameters: ()
focal_class.signature:  IndexFactory()
focal_class.class_method_signature: IndexFactory.newInstance(final String name, final List<String> fields, final boolean unique)
focal_class.full_signature: public static Index newInstance(final String name, final List<String> fields, final boolean unique)
focal_class.identifier: newInstance
focal_class.modifiers: public static
focal_class.parameters: (final String name, final List<String> fields, final boolean unique)
focal_class.return: Index
focal_class.signature: Index newInstance(final String name, final List<String> fields, final boolean unique)
focal_class.class_method_signature: IndexFactory.newInstanceWithCustomKeys(final String name, final List<IndexKey> keys, final boolean unique)
focal_class.full_signature: public static Index newInstanceWithCustomKeys(final String name, final List<IndexKey> keys, final boolean unique)
focal_class.identifier: newInstanceWithCustomKeys
focal_class.modifiers: public static
focal_class.parameters: (final String name, final List<IndexKey> keys, final boolean unique)
focal_class.return: Index
focal_class.signature: Index newInstanceWithCustomKeys(final String name, final List<IndexKey> keys, final boolean unique)
focal_class.class_method_signature: IndexFactory.newExpirationIndex(final String name, final String field, final long expireAfterSeconds)
focal_class.full_signature: public static Index newExpirationIndex(final String name, final String field, final long expireAfterSeconds)
focal_class.identifier: newExpirationIndex
focal_class.modifiers: public static
focal_class.parameters: (final String name, final String field, final long expireAfterSeconds)
focal_class.return: Index
focal_class.signature: Index newExpirationIndex(final String name, final String field, final long expireAfterSeconds)
focal_class.class_method_signature: IndexFactory.createKeysDocument(final List<IndexKey> keys)
focal_class.full_signature: private static BsonDocument createKeysDocument(final List<IndexKey> keys)
focal_class.identifier: createKeysDocument
focal_class.modifiers: private static
focal_class.parameters: (final List<IndexKey> keys)
focal_class.return: BsonDocument
focal_class.signature: BsonDocument createKeysDocument(final List<IndexKey> keys)
focal_class.class_method_signature: IndexFactory.createDefaultKeys(final List<String> fieldNames)
focal_class.full_signature: private static List<IndexKey> createDefaultKeys(final List<String> fieldNames)
focal_class.identifier: createDefaultKeys
focal_class.modifiers: private static
focal_class.parameters: (final List<String> fieldNames)
focal_class.return: List<IndexKey>
focal_class.signature: List<IndexKey> createDefaultKeys(final List<String> fieldNames)
focal_method.body: public static Index newInstanceWithCustomKeys(final String name, final List<IndexKey> keys, final boolean unique) {
          final BsonDocument keysDocument = createKeysDocument(requireNonNull(keys));
          return Index.of(keysDocument, name, unique, unique, BACKGROUND_OPTION_DEFAULT);
      }
focal_method.class_method_signature: IndexFactory.newInstanceWithCustomKeys(final String name, final List<IndexKey> keys, final boolean unique)
focal_method.full_signature: public static Index newInstanceWithCustomKeys(final String name, final List<IndexKey> keys, final boolean unique)
focal_method.identifier: newInstanceWithCustomKeys
focal_method.invocations: createKeysDocument requireNonNull of
focal_method.modifiers: public static
focal_method.parameters: (final String name, final List<IndexKey> keys, final boolean unique)
focal_method.return: Index
focal_method.signature: Index newInstanceWithCustomKeys(final String name, final List<IndexKey> keys, final boolean unique)