Interface DetachableFacet

  • All Known Subinterfaces:
    SModuleFacet

    public interface DetachableFacet
    Presumably facet could store properties independent of the owning module; For instance copying/renaming is supposed to easier when we can detach the facet from one module and attach to the other module.
    • Method Detail

      • getModule

        @Nullable
        SModule getModule()
        The owning module
        Returns:
        null if the module is not attached to this facet
      • attach

        void attach​(@NotNull
                    SModule module)
        Parameters:
        module - will be returned from #getModule afterwards
        Throws:
        IllegalStateException - if the facet is already attached to some module
      • detach

        void detach()
        #getModule will return null after this invocation
      • isAttached

        default boolean isAttached()