// resource type through resource config, rebalance mode through ideal state
ResourceId resourceId = ResourceId.from("resourceId");
UserConfig userConfig = new UserConfig(Scope.resource(resourceId));
userConfig.setSimpleField(KEY1, VALUE1);
ResourceConfiguration resourceConfig = new ResourceConfiguration(resourceId);
resourceConfig.addNamespacedConfig(userConfig);
resourceConfig.getRecord().setSimpleField(KEY2, VALUE2);
IdealState idealState = new IdealState(resourceId);
idealState.setRebalanceMode(RebalanceMode.USER_DEFINED);
idealState.getRecord().setSimpleField(KEY3, VALUE3);