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

com.github.nagyesta.lowkeyvault.mapper.common.EntityConverterRegistry Maven / Gradle / Ivy

package com.github.nagyesta.lowkeyvault.mapper.common;

import com.github.nagyesta.lowkeyvault.model.v7_2.BasePropertiesModel;
import com.github.nagyesta.lowkeyvault.model.v7_2.common.BaseBackupListItem;
import com.github.nagyesta.lowkeyvault.model.v7_2.common.BaseBackupModel;
import com.github.nagyesta.lowkeyvault.model.v7_2.key.BackupListContainer;
import com.github.nagyesta.lowkeyvault.service.EntityId;
import com.github.nagyesta.lowkeyvault.service.common.BaseVaultEntity;

import java.net.URI;

public interface EntityConverterRegistry, M, DM extends M, PM extends BasePropertiesModel, IM, DIM extends IM,
        BLI extends BaseBackupListItem, BL extends BackupListContainer,
        B extends BaseBackupModel> {

    K entityId(URI baseUri, String name);

    V versionedEntityId(URI baseUri, String name, String version);

    RecoveryAwareConverter modelConverter(String apiVersion);

    void registerModelConverter(RecoveryAwareConverter converter);

    AliasAwareConverter propertiesConverter(String apiVersion);

    void registerPropertiesConverter(AliasAwareConverter converter);

    RecoveryAwareConverter itemConverter(String apiVersion);

    void registerItemConverter(RecoveryAwareConverter converter);

    RecoveryAwareConverter versionedItemConverter(String apiVersion);

    void registerVersionedItemConverter(RecoveryAwareConverter converter);

    BackupConverter backupConverter(String apiVersion);

    void registerBackupConverter(BackupConverter converter);
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy