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

br.ufg.inf.es.saep.sandbox.dominio.ParecerRepository Maven / Gradle / Ivy

Go to download

Modelo de Domínio do Sistema de Apoio à Elaboração de Pareceres (SAEP), composto por um único 'bounded context'.

There is a newer version: 1.0.6
Show newest version
/*
 * Copyright (c) 2016. Fábrica de Software - Instituto de Informática (UFG)
 * Creative Commons Attribution 4.0 International License.
 */

package br.ufg.inf.es.saep.sandbox.dominio;

/**
 * Oferece noção de coleções de pareceres em memória.
 *
 * 

Um parecer é o resultado produzido pela avaliação * de um conjunto de relatos (RADOC) conforme uma dada * resolução. O parecer pode ser produzido pela Comissão * de Avaliação Docente (CAD) ou automaticamente pelo * SAEP. * * @see Parecer * @see Radoc */ public interface ParecerRepository { /** * Adiciona nota ao parecer. * * @throws IdentificadorDesconhecido Caso o identificador * fornecido não identifique um parecer existente. * * @param id O identificador único do parecer. * * @param nota A alteração a ser acrescentada ao * pareder. */ void adicionaNota(String id, Nota nota); /** * Remove a nota cujo item {@link Avaliavel} original é * fornedido. * * @param id O identificador único do parecer. * @param original Instância de {@link Avaliavel} que participa * da {@link Nota} a ser removida como origem. * */ void removeNota(String id, Avaliavel original); /** * Acrescenta o parecer ao repositório. * * @throws IdentificadorExistente Caso o * identificador seja empregado por parecer * existente (já persistido). * * @param parecer O parecer a ser persistido. * */ void persisteParecer(Parecer parecer); /** * Altera a fundamentação do parecer. * *

Fundamentação é o texto propriamente dito do * parecer. Não confunda com as alterações de * valores (dados de relatos ou de pontuações). * *

Após a chamada a esse método, o parecer alterado * pode ser recuperado pelo método {@link #byId(String)}. * Observe que uma instância disponível antes dessa chamada * torna-se "inválida". * * @throws IdentificadorDesconhecido Caso o identificador * fornecido não identifique um parecer. * * @param parecer O identificador único do parecer. * @param fundamentacao Novo texto da fundamentação do parecer. */ void atualizaFundamentacao(String parecer, String fundamentacao); /** * Recupera o parecer pelo identificador. * * @param id O identificador do parecer. * * @return O parecer recuperado ou o valor {@code null}, * caso o identificador não defina um parecer. */ Parecer byId(String id); /** * Remove o parecer. * *

Se o identificador fornecido é inválido * ou não correspondente a um parecer existente, * nenhuma situação excepcional é gerada. * * @param id O identificador único do parecer. */ void removeParecer(String id); /** * Recupera o RADOC identificado pelo argumento. * * @param identificador O identificador único do * RADOC. * * @return O {@code Radoc} correspondente ao * identificador fornecido. */ Radoc radocById(String identificador); /** * Conjunto de relatos de atividades e produtos * associados a um docente. * *

Um conjunto de relatos é extraído de fonte * externa de informação. Uma cópia é mantida pelo * SAEP para consistência de pareceres efetuados ao * longo do tempo. Convém ressaltar que informações * desses relatórios podem ser alteradas continuamente. * * @throws IdentificadorExistente Caso o identificador * do objeto a ser persistido seja empregado por * RADOC existente. * * @param radoc O conjunto de relatos a ser persistido. * * @return O identificador único do RADOC. */ String persisteRadoc(Radoc radoc); /** * Remove o RADOC. * *

Após essa operação o RADOC correspondente não * estará disponível para consulta. * *

Não é permitida a remoção de um RADOC para o qual * há pelo menos um parecer referenciando-o. * * @param identificador O identificador do RADOC. */ void removeRadoc(String identificador); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy