Package no.fintlabs

Class FlaisExternalDependentResource<T,C extends FlaisCrd<S>,S extends FlaisSpec>

java.lang.Object
io.javaoperatorsdk.operator.processing.dependent.AbstractDependentResource<R,P>
io.javaoperatorsdk.operator.processing.dependent.AbstractEventSourceHolderDependentResource<R,P,T>
io.javaoperatorsdk.operator.processing.dependent.AbstractExternalDependentResource<R,P,io.javaoperatorsdk.operator.processing.event.source.ExternalResourceCachingEventSource<R,P>>
io.javaoperatorsdk.operator.processing.dependent.external.AbstractPollingDependentResource<R,P>
io.javaoperatorsdk.operator.processing.dependent.external.PerResourcePollingDependentResource<T,C>
no.fintlabs.FlaisExternalDependentResource<T,C,S>
Type Parameters:
T - the class providing external model.
C - the class providing the CRD type.
S - the class providing the spec of the CRD.
All Implemented Interfaces:
io.javaoperatorsdk.operator.api.reconciler.dependent.Deleter<C>, io.javaoperatorsdk.operator.api.reconciler.dependent.DependentResource<T,C>, io.javaoperatorsdk.operator.api.reconciler.dependent.EventSourceReferencer<C>, io.javaoperatorsdk.operator.processing.dependent.Creator<T,C>, io.javaoperatorsdk.operator.processing.event.source.CacheKeyMapper<T>, io.javaoperatorsdk.operator.processing.event.source.polling.PerResourcePollingEventSource.ResourceFetcher<T,C>

public abstract class FlaisExternalDependentResource<T,C extends FlaisCrd<S>,S extends FlaisSpec> extends io.javaoperatorsdk.operator.processing.dependent.external.PerResourcePollingDependentResource<T,C> implements io.javaoperatorsdk.operator.processing.dependent.Creator<T,C>, io.javaoperatorsdk.operator.api.reconciler.dependent.Deleter<C>
Representing an external dependent resource in FLAIS. This can e.g. be an Azure Storage account.

It automatically polls the external source every 5 second to get the latest version. You can change the polling interval by setting the setPollingPeriod in the constructor. If this resource is dependent of any other dependent resources you should call dependsOn in the constructor.

  • Field Summary

    Fields inherited from class io.javaoperatorsdk.operator.processing.dependent.external.AbstractPollingDependentResource

    DEFAULT_POLLING_PERIOD

    Fields inherited from class io.javaoperatorsdk.operator.processing.dependent.AbstractEventSourceHolderDependentResource

    eventSourceNameToUse, genericFilter, onAddFilter, onDeleteFilter, onUpdateFilter

    Fields inherited from class io.javaoperatorsdk.operator.processing.dependent.AbstractDependentResource

    creator, updater
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    dependsOn(io.javaoperatorsdk.operator.api.reconciler.dependent.DependentResource... dependentResources)
     

    Methods inherited from class io.javaoperatorsdk.operator.processing.dependent.external.PerResourcePollingDependentResource

    createEventSource

    Methods inherited from class io.javaoperatorsdk.operator.processing.dependent.external.AbstractPollingDependentResource

    getPollingPeriod, keyFor, setPollingPeriod

    Methods inherited from class io.javaoperatorsdk.operator.processing.dependent.AbstractExternalDependentResource

    delete, deleteTargetResource, getExternalStateEventSource, getKubernetesClient, handleDeleteTargetResource, handleExplicitStateCreation, onCreated, resolveEventSource, setKubernetesClient

    Methods inherited from class io.javaoperatorsdk.operator.processing.dependent.AbstractEventSourceHolderDependentResource

    applyFilters, eventSource, eventSource, initEventSource, onUpdated, resourceType, setEventSource, setOnAddFilter, setOnDeleteFilter, setOnUpdateFilter, useEventSourceWithName

    Methods inherited from class io.javaoperatorsdk.operator.processing.dependent.AbstractDependentResource

    desired, getSecondaryResource, handleCreate, handleDelete, handleUpdate, isCreatable, isDeletable, isUpdatable, match, reconcile, reconcile, setResourceDiscriminator

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.javaoperatorsdk.operator.processing.dependent.Creator

    create

    Methods inherited from interface io.javaoperatorsdk.operator.api.reconciler.dependent.Deleter

    delete

    Methods inherited from interface io.javaoperatorsdk.operator.processing.event.source.polling.PerResourcePollingEventSource.ResourceFetcher

    fetchResources
  • Constructor Details

    • FlaisExternalDependentResource

      public FlaisExternalDependentResource(Class<T> resourceType, FlaisWorkflow<C,S> workflow)
  • Method Details

    • dependsOn

      public void dependsOn(io.javaoperatorsdk.operator.api.reconciler.dependent.DependentResource... dependentResources)