@Override public D save(D definition) { Assert.notNull(definition, "Definition may not be null"); if (repository.findOne(definition.getName()) != null) { throwDefinitionAlreadyExistsException(definition); } streamParser.parse(definition.getName(), definition.getDefinition()); return repository.save(definition); }
@Override public D save(D definition) { Assert.notNull(definition, "Definition may not be null"); String name = definition.getName(); String def = definition.getDefinition(); validateBeforeSave(name, def); List<ModuleDescriptor> moduleDescriptors = parser.parse(name, def, definitionKind); // todo: the result of parse() should already have correct (polymorphic) definitions List<ModuleDefinition> moduleDefinitions = createModuleDefinitions(moduleDescriptors); if (!moduleDefinitions.isEmpty()) { definition.setModuleDefinitions(moduleDefinitions); } D savedDefinition = repository.save(definition); return afterSave(savedDefinition); }
@Override public void deleteAll() { repository.deleteAll(); }
@Override public Page<D> findAll(Pageable pageable) { return repository.findAll(pageable); }
@Override public Iterable<D> findAll() { return repository.findAll(); }
@Override public D findOne(String name) { return repository.findOne(name); }