blueflood-core/src/main/java/com/rackspacecloud/blueflood/rollup/SlotKey.java
public static SlotKey parse(String string) {
        String[] tokens = string.split(",");
        if (tokens.length != 3) {
            return null;
        }
        Granularity granularity = Granularity.fromString(tokens[0]);
        if (granularity == null) {
            return null;
        }
        try {
            int slot = Integer.parseInt(tokens[1]);
            int shard = Integer.parseInt(tokens[2]);
            return of(granularity, slot, shard);
        } catch (IllegalArgumentException e) {
            return null;
        }
    }
public static SlotKey parse(String string) {
        String[] tokens = string.split(",");
        if (tokens.length != 3) {
            return null;
        }
        Granularity granularity = Granularity.fromString(tokens[0]);
        if (granularity == null) {
            return null;
        }
        try {
            int slot = Integer.parseInt(tokens[1]);
            int shard = Integer.parseInt(tokens[2]);
            return of(granularity, slot, shard);
        } catch (IllegalArgumentException e) {
            return null;
        }
    }
Given the encoded slot key, returns the java object of it.
For the valid slot keys, this function is inverse of {@link #toString()}.
@return decoded {@link SlotKey}, <code>null</code> if it's an invalid slotkey.

This function is mostly used in the tests.