Skip to content

Commit

Permalink
Refactor resource configurations to ensure all configurations are ser…
Browse files Browse the repository at this point in the history
…ializable. Require executors to be supplied in code separate from configurations.
  • Loading branch information
kuujo committed Feb 14, 2015
1 parent 3808bb3 commit 6860b23
Show file tree
Hide file tree
Showing 28 changed files with 1,259 additions and 397 deletions.
303 changes: 283 additions & 20 deletions api/src/main/java/net/kuujo/copycat/Copycat.java

Large diffs are not rendered by default.

34 changes: 0 additions & 34 deletions api/src/main/java/net/kuujo/copycat/CopycatConfig.java
Expand Up @@ -20,13 +20,10 @@
import net.kuujo.copycat.util.AbstractConfigurable; import net.kuujo.copycat.util.AbstractConfigurable;
import net.kuujo.copycat.util.Configurable; import net.kuujo.copycat.util.Configurable;
import net.kuujo.copycat.util.ConfigurationException; import net.kuujo.copycat.util.ConfigurationException;
import net.kuujo.copycat.util.concurrent.NamedThreadFactory;
import net.kuujo.copycat.util.internal.Assert; import net.kuujo.copycat.util.internal.Assert;
import net.kuujo.copycat.util.serializer.Serializer; import net.kuujo.copycat.util.serializer.Serializer;


import java.util.Map; import java.util.Map;
import java.util.concurrent.Executor;
import java.util.concurrent.Executors;


/** /**
* Copycat configuration. * Copycat configuration.
Expand All @@ -41,8 +38,6 @@ public class CopycatConfig extends AbstractConfigurable {
private static final String DEFAULT_CONFIGURATION = "copycat-default"; private static final String DEFAULT_CONFIGURATION = "copycat-default";
private static final String CONFIGURATION = "copycat"; private static final String CONFIGURATION = "copycat";


private Executor executor = Executors.newSingleThreadExecutor(new NamedThreadFactory("copycat-%d"));

public CopycatConfig() { public CopycatConfig() {
super(CONFIGURATION, DEFAULT_CONFIGURATION); super(CONFIGURATION, DEFAULT_CONFIGURATION);
} }
Expand Down Expand Up @@ -210,35 +205,6 @@ public CopycatConfig withDefaultSerializer(Serializer serializer) {
return this; return this;
} }


/**
* Sets the Copycat executor.
*
* @param executor The Copycat executor.
*/
public void setDefaultExecutor(Executor executor) {
this.executor = Assert.isNotNull(executor, "executor");
}

/**
* Returns the Copycat executor.
*
* @return The Copycat executor or {@code null} if no executor was specified.
*/
public Executor getDefaultExecutor() {
return executor;
}

/**
* Sets the Copycat executor, returning the configuration for method chaining.
*
* @param executor The Copycat executor.
* @return The Copycat configuration.
*/
public CopycatConfig withDefaultExecutor(Executor executor) {
setDefaultExecutor(executor);
return this;
}

@Override @Override
public String toString() { public String toString() {
return String.format("%s[%s]", getClass().getSimpleName(), config.root().unwrapped()); return String.format("%s[%s]", getClass().getSimpleName(), config.root().unwrapped());
Expand Down

0 comments on commit 6860b23

Please sign in to comment.