<!--

    Copyright (c) 2012-2023 Red Hat, Inc.
    This program and the accompanying materials are made
    available under the terms of the Eclipse Public License 2.0
    which is available at https://www.eclipse.org/legal/epl-2.0/

    SPDX-License-Identifier: EPL-2.0

    Contributors:
      Red Hat, Inc. - initial API and implementation

-->
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
             xsi:schemaLocation="http://java.sun.com/xml/ns/persistence persistence_1_0.xsd" version="1.0">
    <persistence-unit name="main" transaction-type="RESOURCE_LOCAL">
        <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider>

        <class>org.eclipse.che.account.spi.AccountImpl</class>
        <class>org.eclipse.che.api.user.server.model.impl.UserImpl</class>
        <class>org.eclipse.che.api.user.server.model.impl.ProfileImpl</class>
        <class>org.eclipse.che.api.user.server.jpa.PreferenceEntity</class>

        <class>org.eclipse.che.api.workspace.server.model.impl.WorkspaceImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.WorkspaceConfigImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.ProjectConfigImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.EnvironmentImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.EnvironmentRecipeImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.MachineConfigImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.ProjectConfigImpl$Attribute</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.SourceStorageImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.ServerConfigImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.VolumeImpl</class>

        <class>org.eclipse.che.api.workspace.server.model.impl.CommandImpl</class>

        <class>org.eclipse.che.api.factory.server.model.impl.FactoryImpl</class>
        <class>org.eclipse.che.api.factory.server.model.impl.OnAppClosedImpl</class>
        <class>org.eclipse.che.api.factory.server.model.impl.OnProjectsLoadedImpl</class>
        <class>org.eclipse.che.api.factory.server.model.impl.OnAppLoadedImpl</class>
        <class>org.eclipse.che.api.factory.server.model.impl.PoliciesImpl</class>
        <class>org.eclipse.che.api.factory.server.model.impl.ActionImpl</class>
        <class>org.eclipse.che.api.factory.server.model.impl.AuthorImpl</class>
        <class>org.eclipse.che.api.factory.server.model.impl.IdeImpl</class>

        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.DevfileImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.ProjectImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.ComponentImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.EntrypointImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.ActionImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.VolumeImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.SourceImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.EnvImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.CommandImpl</class>
        <class>org.eclipse.che.api.workspace.server.model.impl.devfile.EndpointImpl</class>
        <class>org.eclipse.che.api.workspace.server.devfile.SerializableConverter</class>
        <class>org.eclipse.che.api.devfile.server.model.impl.UserDevfileImpl</class>

        <class>org.eclipse.che.api.ssh.server.model.impl.SshPairImpl</class>
        
        <class>org.eclipse.che.multiuser.api.permission.server.model.impl.SystemPermissionsImpl</class>
        <class>org.eclipse.che.multiuser.api.permission.server.model.impl.AbstractPermissions</class>
        <class>org.eclipse.che.multiuser.permission.workspace.server.model.impl.WorkerImpl</class>
        <class>org.eclipse.che.multiuser.permission.devfile.server.model.impl.UserDevfilePermissionImpl</class>

        <class>org.eclipse.che.multiuser.resource.spi.impl.FreeResourcesLimitImpl</class>
        <class>org.eclipse.che.multiuser.resource.spi.impl.ResourceImpl</class>

        <class>org.eclipse.che.multiuser.organization.spi.impl.OrganizationImpl</class>
        <class>org.eclipse.che.multiuser.organization.spi.impl.MemberImpl</class>
        <class>org.eclipse.che.multiuser.organization.spi.impl.OrganizationDistributedResourcesImpl</class>

        <class>org.eclipse.che.api.workspace.activity.WorkspaceActivity</class>
        <class>org.eclipse.che.multiuser.machine.authentication.server.signature.model.impl.SignatureKeyImpl</class>
        <class>org.eclipse.che.multiuser.machine.authentication.server.signature.model.impl.SignatureKeyPairImpl</class>

        <class>org.eclipse.che.workspace.infrastructure.kubernetes.model.KubernetesRuntimeState</class>
        <class>org.eclipse.che.workspace.infrastructure.kubernetes.model.KubernetesRuntimeCommandImpl</class>

        <class>org.eclipse.che.workspace.infrastructure.kubernetes.model.KubernetesMachineImpl</class>
        <class>org.eclipse.che.workspace.infrastructure.kubernetes.model.KubernetesMachineImpl.MachineId</class>

        <class>org.eclipse.che.workspace.infrastructure.kubernetes.model.KubernetesServerImpl</class>
        <class>org.eclipse.che.workspace.infrastructure.kubernetes.model.KubernetesServerImpl.ServerId</class>

        <exclude-unlisted-classes>true</exclude-unlisted-classes>
    </persistence-unit>
</persistence>
