0

既存の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));の使い方 は正しくありません。提案してください

4

1 に答える 1