package com.megatim.fdxconvert.views.jsonstructure;
|
|
import com.megatim.dynamicjsonparser.enums.TypeDonnee;
|
import com.megatim.fdxconvert.pojo.Delimiteur;
|
import com.megatim.fdxconvert.viewmodel.JsonStructureViewModel;
|
|
import java.util.List;
|
import java.util.stream.Collectors;
|
|
public class DefaultNestedJsonStructure implements NestedJsonStructure {
|
|
private final JsonStructureViewModel viewModel;
|
|
public DefaultNestedJsonStructure(JsonStructureViewModel viewModel) {
|
this.viewModel = viewModel;
|
}
|
|
@Override
|
public String name() {
|
return viewModel.nameProperty().get();
|
}
|
|
@Override
|
public TypeDonnee typeDonnee() {
|
return viewModel.typeProperty().get();
|
}
|
|
@Override
|
public String format() {
|
return viewModel.formatProperty().get();
|
}
|
|
@Override
|
public Delimiteur delimiteur() {
|
return viewModel.delimitorProperty().get();
|
}
|
|
@Override
|
public int taille() {
|
return viewModel.tailleProperty().get();
|
}
|
|
@Override
|
public boolean isRequired() {
|
return viewModel.requiredProperty().get();
|
}
|
|
@Override
|
public boolean isCollection() {
|
return viewModel.collectionProperty().get();
|
}
|
|
@Override
|
public List<NestedJsonStructure> children() {
|
return viewModel.getChildren().stream().map(DefaultNestedJsonStructure::new).collect(Collectors.toList());
|
}
|
}
|