All Downloads are FREE. Search and download functionalities are using the official Maven repository.

nl.vpro.domain.api.subtitles.SubtitlesForm Maven / Gradle / Ivy

/*
 * Copyright (C) 2016 All rights reserved
 * VPRO The Netherlands
 */
package nl.vpro.domain.api.subtitles;

import java.util.function.Predicate;

import javax.validation.Valid;
import javax.xml.bind.annotation.*;

import nl.vpro.domain.api.Form;
import nl.vpro.domain.api.FormUtils;
import nl.vpro.domain.subtitles.StandaloneCue;

/**
 *
 * @author Michiel Meeuwissen
 * @since 4.8
 */
@XmlRootElement(name = "subtitlesForm")
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "subtitlesFormType",
    propOrder = {
        "searches"})
public class SubtitlesForm implements Form, Predicate {



    @XmlElement
    @Valid
    private SubtitlesSearch searches;


    public SubtitlesForm() {

    }
    @lombok.Builder
    private SubtitlesForm(SubtitlesSearch searches) {
        this.searches = searches;
    }


    public SubtitlesSearch getSearches() {
        return searches;
    }

    public void setSearches(SubtitlesSearch searches) {
        this.searches = searches;
    }

    @Override
    public boolean test(StandaloneCue standaloneCue) {
        return searches == null || searches.test(standaloneCue);
    }

    @Override
    public boolean isHighlight() {
        return false;

    }

    @Override
    public boolean isFaceted() {
        return false;
    }

    @Override
    public String getText() {
        return FormUtils.getText(searches);

    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy