Skip to content

Commit

Permalink
refactor: KnoraUserGroup and KnoraUserGroupRepo (DEV-3288)
Browse files Browse the repository at this point in the history
  • Loading branch information
siers committed Feb 29, 2024
1 parent 8df7033 commit ffce932
Show file tree
Hide file tree
Showing 21 changed files with 350 additions and 217 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ import org.apache.pekko.actor.Status.Failure
import java.util.UUID

import dsp.errors.*
import dsp.valueobjects.Group.*
import dsp.valueobjects.V2
import org.knora.webapi.*
import org.knora.webapi.messages.admin.responder.groupsmessages.*
Expand All @@ -20,7 +19,11 @@ import org.knora.webapi.routing.UnsafeZioRun
import org.knora.webapi.sharedtestdata.SharedTestDataADM.*
import org.knora.webapi.slice.admin.api.GroupsRequests.GroupCreateRequest
import org.knora.webapi.slice.admin.api.GroupsRequests.GroupUpdateRequest
import org.knora.webapi.slice.admin.domain.model.GroupDescriptions
import org.knora.webapi.slice.admin.domain.model.GroupIri
import org.knora.webapi.slice.admin.domain.model.GroupName
import org.knora.webapi.slice.admin.domain.model.GroupSelfJoin
import org.knora.webapi.slice.admin.domain.model.GroupStatus
import org.knora.webapi.slice.admin.domain.model.KnoraProject.ProjectIri
import org.knora.webapi.util.MutableTestIri
import org.knora.webapi.util.ZioScalaTestUtil.assertFailsWithA
Expand Down
68 changes: 0 additions & 68 deletions webapi/src/main/scala/dsp/valueobjects/Group.scala

This file was deleted.

8 changes: 7 additions & 1 deletion webapi/src/main/scala/dsp/valueobjects/V2.scala
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@

package dsp.valueobjects

import org.eclipse.rdf4j.sparqlbuilder.rdf.Rdf
import org.eclipse.rdf4j.sparqlbuilder.rdf.RdfLiteral.StringLiteral
import zio.json.*

object V2 {
Expand All @@ -15,7 +17,11 @@ object V2 {
* @param value the string value.
* @param language the language iso.
*/
case class StringLiteralV2(value: String, language: Option[String])
case class StringLiteralV2(value: String, language: Option[String]) {
def toRdfLiteral: StringLiteral =
language.map(Rdf.literalOfLanguage(value, _)).getOrElse(Rdf.literalOf(value))
}

object StringLiteralV2 {
implicit val codec: JsonCodec[StringLiteralV2] = DeriveJsonCodec.gen[StringLiteralV2]
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -465,7 +465,7 @@ object OntologyConstants {
val IsInGroup: IRI = KnoraAdminPrefixExpansion + "isInGroup"
val IsInSystemAdminGroup: IRI = KnoraAdminPrefixExpansion + "isInSystemAdminGroup"

/* Status used for User and Project*/
/* Status used for User, Group and Project */
val StatusProp: IRI = KnoraAdminPrefixExpansion + "status"

/* Project */
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/*
* Copyright © 2021 - 2024 Swiss National Data and Service Center for the Humanities and/or DaSCH Service Platform contributors.
* SPDX-License-Identifier: Apache-2.0
*/

package org.knora.webapi.messages.admin.responder.groupsmessages

import org.knora.webapi.slice.admin.domain.model.*

/**
* Payload used for updating of an existing group.
*
* @param name the name of the group.
* @param descriptions the descriptions of the group.
* @param status the group's status.
* @param selfjoin the group's self-join status.
*/
final case class GroupUpdatePayloadADM(
name: Option[GroupName] = None,
descriptions: Option[GroupDescriptions] = None,
// TODO-mpro: create separate payload for status update
status: Option[GroupStatus] = None,
selfjoin: Option[GroupSelfJoin] = None
)
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,6 @@ import zio.macros.accessible
import java.util.UUID

import dsp.errors.*
import dsp.valueobjects.Group.GroupStatus
import org.knora.webapi.*
import org.knora.webapi.core.MessageHandler
import org.knora.webapi.core.MessageRelay
Expand All @@ -39,6 +38,7 @@ import org.knora.webapi.slice.admin.AdminConstants
import org.knora.webapi.slice.admin.api.GroupsRequests.GroupCreateRequest
import org.knora.webapi.slice.admin.api.GroupsRequests.GroupUpdateRequest
import org.knora.webapi.slice.admin.domain.model.GroupIri
import org.knora.webapi.slice.admin.domain.model.GroupStatus
import org.knora.webapi.slice.admin.domain.model.KnoraProject.Shortcode
import org.knora.webapi.slice.admin.domain.model.User
import org.knora.webapi.slice.admin.domain.model.UserIri
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,28 +9,15 @@ import sttp.tapir.Codec
import sttp.tapir.CodecFormat
import zio.json.JsonCodec

import dsp.valueobjects.Group.GroupDescriptions
import dsp.valueobjects.Group.GroupName
import dsp.valueobjects.Group.GroupSelfJoin
import dsp.valueobjects.Group.GroupStatus
import dsp.valueobjects.V2
import org.knora.webapi.slice.admin.api.model.MaintenanceRequests.AssetId
import org.knora.webapi.slice.admin.domain.model.Email
import org.knora.webapi.slice.admin.domain.model.FamilyName
import org.knora.webapi.slice.admin.domain.model.GivenName
import org.knora.webapi.slice.admin.domain.model.GroupIri
import org.knora.webapi.slice.admin.domain.model.KnoraProject.*
import org.knora.webapi.slice.admin.domain.model.ListProperties.Comments
import org.knora.webapi.slice.admin.domain.model.ListProperties.Labels
import org.knora.webapi.slice.admin.domain.model.ListProperties.ListIri
import org.knora.webapi.slice.admin.domain.model.ListProperties.ListName
import org.knora.webapi.slice.admin.domain.model.ListProperties.Position
import org.knora.webapi.slice.admin.domain.model.Password
import org.knora.webapi.slice.admin.domain.model.RestrictedViewSize
import org.knora.webapi.slice.admin.domain.model.SystemAdmin
import org.knora.webapi.slice.admin.domain.model.UserIri
import org.knora.webapi.slice.admin.domain.model.UserStatus
import org.knora.webapi.slice.admin.domain.model.Username
import org.knora.webapi.slice.admin.domain.model.*
import org.knora.webapi.slice.common.Value.BooleanValue
import org.knora.webapi.slice.common.Value.IntValue
import org.knora.webapi.slice.common.Value.StringValue
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -13,17 +13,17 @@ import zio.*
import zio.json.DeriveJsonCodec
import zio.json.JsonCodec

import dsp.valueobjects.Group.GroupDescriptions
import dsp.valueobjects.Group.GroupName
import dsp.valueobjects.Group.GroupSelfJoin
import dsp.valueobjects.Group.GroupStatus
import org.knora.webapi.messages.admin.responder.groupsmessages.*
import org.knora.webapi.messages.admin.responder.usersmessages.GroupMembersGetResponseADM
import org.knora.webapi.messages.admin.responder.usersmessages.UsersADMJsonProtocol.*
import org.knora.webapi.slice.admin.api.AdminPathVariables.groupIriPathVar
import org.knora.webapi.slice.admin.api.GroupsRequests.GroupCreateRequest
import org.knora.webapi.slice.admin.api.GroupsRequests.GroupUpdateRequest
import org.knora.webapi.slice.admin.domain.model.GroupDescriptions
import org.knora.webapi.slice.admin.domain.model.GroupIri
import org.knora.webapi.slice.admin.domain.model.GroupName
import org.knora.webapi.slice.admin.domain.model.GroupSelfJoin
import org.knora.webapi.slice.admin.domain.model.GroupStatus
import org.knora.webapi.slice.admin.domain.model.KnoraProject.ProjectIri
import org.knora.webapi.slice.common.api.BaseEndpoints

Expand Down

This file was deleted.

Loading

0 comments on commit ffce932

Please sign in to comment.