现有的 fillModel 方法如下
@Override
protected void fillModel(final Model model,
final List<FacebookChannelConfig> items) {
final Map<FacebookChannelConfig, Boolean> defaultConfigMap = Maps
.newHashMapWithExpectedSize(items.size());
for (FacebookChannelConfig channelConfig : items) {
if (configRepository.getDefault() != null
&& configRepository.getDefault().getId().toString()
.equals(channelConfig.getId().toString())) {
defaultConfigMap.put(channelConfig, Boolean.TRUE);
} else {
defaultConfigMap.put(channelConfig, Boolean.FALSE);
}
if (channelConfig.getOwner().getId().getId() != userContext
.getOrganization().getId().getId()) {
channelConfig.setName(channelConfig.getName() + "("
+ channelConfig.getOwner().getName() + ")");
}
}
model.addAttribute("isDefault", defaultConfigMap);
}
我已将上述 fillModel中的以下代码添加到* idDefault * 方法中。
if (configRepository.getDefault() != null
&& configRepository.getDefault().getId().toString()
.equals(channelConfig.getId().toString())) {
defaultConfigMap.put(channelConfig, Boolean.TRUE);
} else {
defaultConfigMap.put(channelConfig, Boolean.FALSE);
}
我有 isDefault 方法,它返回如下布尔值
private boolean isDefault(final List<FacebookChannelConfig> config) {
if (configRepository.getDefault() != null
&& configRepository.getDefault().getId().toString()
.equals(config.get(0).toString())) {
return true;
}
return false;
}
上面的方法 isDefault 正在 fillModel方法中使用,如下所示
protected void fillModel(final Model model,
final List<FacebookChannelConfig> items) {
final Map<FacebookChannelConfig, Boolean> defaultConfigMap = Maps
.newHashMapWithExpectedSize(items.size());
for (FacebookChannelConfig channelConfig : items) {
defaultConfigMap.put(channelConfig, isDefault(items));
if (channelConfig.getOwner().getId().getId() != userContext.getOrganization().getId().getId()) {
channelConfig.setName(
channelConfig.getName() + "("
+ channelConfig.getOwner().getName()
+ ")");
}
}
model.addAttribute("isDefault", defaultConfigMap);
}
defaultConfigMap.put(channelConfig,isDefault(items)); 的上述用法不正确。 请求建议
答案 0 :(得分:1)
您可以在需要元素的位置使用List: 也许这可行:
private boolean isDefault(final FacebookChannelConfig channelConfig) {
if (configRepository.getDefault() != null
&& configRepository.getDefault().getId().toString()
.equals(channelConfig.getId().toString())) {
return true;
}
return false;
}
并使用:
defaultConfigMap.put(channelConfig, isDefault(channelConfig));