package com.qianwen.core.tool.metadata; import java.util.HashMap; import java.util.Map; import org.apache.commons.collections4.MapUtils; import com.qianwen.core.tool.utils.BeanUtil; /* loaded from: blade-core-tool-9.3.0.0-SNAPSHOT.jar:org/springblade/core/tool/metadata/SimplePropertyMetadata.class */ public class SimplePropertyMetadata implements PropertyMetadata { private DataType valueType; private String id; private String name; private String description; private Map expands; public void setValueType(final DataType valueType) { this.valueType = valueType; } public void setId(final String id) { this.id = id; } @Override // org.springblade.core.tool.metadata.Metadata public void setName(final String name) { this.name = name; } @Override // org.springblade.core.tool.metadata.Metadata public void setDescription(final String description) { this.description = description; } @Override // org.springblade.core.tool.metadata.Metadata public void setExpands(final Map expands) { this.expands = expands; } private SimplePropertyMetadata(final DataType valueType, final String id, final String name, final String description, final Map expands) { this.valueType = valueType; this.id = id; this.name = name; this.description = description; this.expands = expands; } public static SimplePropertyMetadata of(final DataType valueType, final String id, final String name, final String description, final Map expands) { return new SimplePropertyMetadata(valueType, id, name, description, expands); } public SimplePropertyMetadata() { } @Override // org.springblade.core.tool.metadata.PropertyMetadata public DataType getValueType() { return this.valueType; } @Override // org.springblade.core.tool.metadata.Metadata public String getId() { return this.id; } @Override // org.springblade.core.tool.metadata.Metadata public String getName() { return this.name; } @Override // org.springblade.core.tool.metadata.Metadata public String getDescription() { return this.description; } @Override // org.springblade.core.tool.metadata.Metadata public Map getExpands() { return this.expands; } public static SimplePropertyMetadata of(String id, String name, DataType type) { SimplePropertyMetadata metadata = new SimplePropertyMetadata(); metadata.setId(id); metadata.setName(name); metadata.setValueType(type); return metadata; } @Override // org.springblade.core.tool.metadata.PropertyMetadata public PropertyMetadata merge(PropertyMetadata another, MergeOption... option) { SimplePropertyMetadata metadata = (SimplePropertyMetadata) BeanUtil.copy((Object) this, SimplePropertyMetadata.class); if (metadata.expands == null) { metadata.expands = new HashMap<>(); } if (MapUtils.isNotEmpty(another.getExpands())) another.getExpands().forEach(metadata.expands::put); return metadata; } }