@Override public String toString() { StringBuilder result = new StringBuilder("RobotCapabilities[version=" + version + ",hash=" + capabilitiesHash); for (Map.Entry<EventType, Capability> entry : capabilities.entrySet()) { result .append(",") .append(entry.getKey()) .append(":(") .append(entry.getValue().getEventType()) .append(",#") .append(entry.getValue().getContexts().size()) .append(",") .append(entry.getValue().getFilter()) .append(")"); } result.append("]"); return result.toString(); } }
contexts = Capability.DEFAULT_CONTEXT; } else { contexts = capability.getContexts();
private boolean compareCapability(Capability c1, Capability c2) { if (c1.getEventType() != c2.getEventType() || !c1.getFilter().equals(c2.getFilter())) { return false; } EnumSet<Context> cset1 = EnumSet.copyOf(c1.getContexts()); EnumSet<Context> cset2 = EnumSet.copyOf(c2.getContexts()); return cset1.equals(cset2); }
private boolean compareCapability(Capability c1, Capability c2) { if (c1.getEventType() != c2.getEventType() || !c1.getFilter().equals(c2.getFilter())) { return false; } EnumSet<Context> cset1 = EnumSet.copyOf(c1.getContexts()); EnumSet<Context> cset2 = EnumSet.copyOf(c2.getContexts()); return cset1.equals(cset2); }
private DBObject capabilitiesToObject(RobotCapabilities capabilities) { if (capabilities == null) { return null; } BasicDBObject capabilitiesObj = new BasicDBObject(); for (Capability capability : capabilities.getCapabilitiesMap().values()) { BasicBSONList contexts = new BasicBSONList(); for (Context c : capability.getContexts()) { contexts.add(c.name()); } capabilitiesObj.put(capability.getEventType().name(), new BasicDBObject() .append(CAPABILITY_CONTEXTS_FIELD, contexts) .append(CAPABILITY_FILTER_FIELD, capability.getFilter())); } BasicDBObject object = new BasicDBObject() .append(CAPABILITIES_CAPABILITIES_FIELD, capabilitiesObj) .append(CAPABILITIES_HASH_FIELD, capabilities.getCapabilitiesHash()) .append(CAPABILITIES_VERSION_FIELD, capabilities.getProtocolVersion().name()); return object; }
private static ProtoRobotCapability serialize(Capability capability) { ProtoRobotCapability.Builder builder = ProtoRobotCapability.newBuilder(); builder.setEventType(capability.getEventType().name()); builder.setFilter(capability.getFilter()); for (Context context: capability.getContexts()) { builder.addContext(context.name()); } return builder.build(); }