1 /* 2 * Copyright (c) MuleSoft, Inc. All rights reserved. http://www.mulesoft.com 3 * The software in this package is published under the terms of the CPAL v1.0 4 * license, a copy of which has been included with this distribution in the 5 * LICENSE.txt file. 6 */ 7 package org.mule.api.config; 8 9 import java.util.Map; 10 11 /** 12 * <code>PropertyFactory</code> is used to create objects from the property file. 13 * PropertyFactories map to <factory-property> elements in the MuleXml config. 14 */ 15 public interface PropertyFactory 16 { 17 /** 18 * Creates a property using code execution. 19 * 20 * @param properties The map of properties preceeding this <factory-property> 21 * @return an object that will become the value of a property with a name that 22 * matches the 'name' attribute on the <factory-property> element. 23 * @throws Exception 24 */ 25 Object create(Map<?, ?> properties) throws Exception; 26 }