/** * Sets additional properties to be applied to tables created with this configuration. Additional * calls to this method replace properties set by previous calls. * * @param props * additional properties to add to the table when it is created * @return this */ public NewTableConfiguration setProperties(Map<String,String> props) { checkArgument(props != null, "properties is null"); checkDisjoint(props, samplerProps, "sampler"); checkDisjoint(props, summarizerProps, "summarizer"); checkDisjoint(props, localityProps, "locality group"); checkDisjoint(props, iteratorProps, "iterator"); checkTableProperties(props); try { LocalityGroupUtil.checkLocalityGroups(props.entrySet()); } catch (LocalityGroupConfigurationError e) { throw new IllegalArgumentException(e); } this.properties = new HashMap<>(props); return this; }