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<String, Object> 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<String, Object> expands) {
|
this.expands = expands;
|
}
|
|
private SimplePropertyMetadata(final DataType valueType, final String id, final String name, final String description, final Map<String, Object> 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<String, Object> 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<String, Object> 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;
|
}
|
}
|