Java tutorial
/* * Copyright 2014-2016 Groupon, Inc * Copyright 2014-2016 The Billing Project, LLC * * The Billing Project licenses this file to you under the Apache License, version 2.0 * (the "License"); you may not use this file except in compliance with the * License. You may obtain a copy of the License at: * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the * License for the specific language governing permissions and limitations * under the License. */ package org.killbill.billing.plugin.adyen.api; import java.io.IOException; import java.util.List; import java.util.Map; import javax.annotation.Nullable; import org.killbill.billing.payment.api.PluginProperty; import org.killbill.billing.plugin.api.PluginProperties; import com.fasterxml.jackson.databind.ObjectMapper; import com.google.common.collect.ImmutableMap; public abstract class AdyenModelPluginBase { private static final ObjectMapper objectMapper = new ObjectMapper(); protected static Map toMap(@Nullable final String additionalData) { if (additionalData == null) { return ImmutableMap.of(); } try { return objectMapper.readValue(additionalData, Map.class); } catch (final IOException e) { return ImmutableMap.of(); } } protected static List<PluginProperty> buildPluginProperties(@Nullable final String additionalData) { final Map additionalDataMap = toMap(additionalData); return PluginProperties.buildPluginProperties(additionalDataMap); } }