Skip to content

Commit

Permalink
Remove unused functionality from TreeMapBuilder
Browse files Browse the repository at this point in the history
 - and avoids the duplicate map initialization
  • Loading branch information
mfussenegger committed Jul 5, 2018
1 parent 57c6593 commit 01f8490
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 45 deletions.
35 changes: 4 additions & 31 deletions core/src/main/java/io/crate/core/collections/TreeMapBuilder.java
Expand Up @@ -22,53 +22,26 @@
package io.crate.core.collections;

import java.util.Map;
import java.util.TreeMap;

import static com.google.common.collect.Maps.newTreeMap;

public class TreeMapBuilder<K extends Comparable, V> {
public final class TreeMapBuilder<K extends Comparable, V> {

public static <K extends Comparable, V> TreeMapBuilder<K, V> newMapBuilder() {
return new TreeMapBuilder<>();
}

private Map<K, V> map = newTreeMap();
private final Map<K, V> map;

public TreeMapBuilder() {
this.map = newTreeMap();
}

public TreeMapBuilder<K, V> putAll(Map<K, V> map) {
this.map.putAll(map);
return this;
this.map = new TreeMap<>();
}

public TreeMapBuilder<K, V> put(K key, V value) {
this.map.put(key, value);
return this;
}

public TreeMapBuilder<K, V> remove(K key) {
this.map.remove(key);
return this;
}

public TreeMapBuilder<K, V> clear() {
this.map.clear();
return this;
}

public V get(K key) {
return map.get(key);
}

public boolean containsKey(K key) {
return map.containsKey(key);
}

public boolean isEmpty() {
return map.isEmpty();
}

public Map<K, V> map() {
return this.map;
}
Expand Down
Expand Up @@ -36,22 +36,11 @@ public void testBuilder() throws Exception {
TreeMapBuilder<Integer, Integer> builder = TreeMapBuilder.newMapBuilder();

assertThat(builder.put(1, 1), instanceOf(TreeMapBuilder.class));
assertTrue(builder.containsKey(1));
assertThat(builder.get(1), is(1));
assertFalse(builder.isEmpty());

assertThat(builder.remove(1), instanceOf(TreeMapBuilder.class));
assertTrue(builder.isEmpty());
assertTrue(builder.map().containsKey(1));
assertThat(builder.map().get(1), is(1));
assertFalse(builder.map().isEmpty());

builder.put(1, 1);
assertThat(builder.map(), instanceOf(TreeMap.class));

TreeMapBuilder<Integer, Integer> builder2 = TreeMapBuilder.<Integer, Integer>newMapBuilder();
assertThat(builder2.putAll(builder.map()), instanceOf(TreeMapBuilder.class));
assertThat(builder2.get(1), is(1));
assertFalse(builder2.isEmpty());

assertThat(builder2.clear(), instanceOf(TreeMapBuilder.class));
assertTrue(builder2.isEmpty());
}
}

0 comments on commit 01f8490

Please sign in to comment.