Untitled

 avatar
unknown
java
2 years ago
14 kB
5
Indexable
// GrpcUsersDataServiceKt.java
package com.miro.grpc.usersdata;

import kotlin.Metadata;
import org.jetbrains.annotations.NotNull;

@Metadata(
   mv = {1, 7, 1},
   k = 2,
   d1 = {"\u0000\u000e\n\u0000\n\u0002\u0010\b\n\u0000\n\u0002\u0010\u000e\n\u0000\"\u000e\u0010\u0000\u001a\u00020\u0001X\u0080T¢\u0006\u0002\n\u0000\"\u000e\u0010\u0002\u001a\u00020\u0003X\u0080T¢\u0006\u0002\n\u0000¨\u0006\u0004"},
   d2 = {"MAX_BATCH_SIZE", "", "NO_ADDITIONAL_ITEMS_NEXT_PAGE_TOKEN", "", "grpc-users-data-api"}
)
public final class GrpcUsersDataServiceKt {
   public static final int MAX_BATCH_SIZE = 100;
   @NotNull
   public static final String NO_ADDITIONAL_ITEMS_NEXT_PAGE_TOKEN = "";
}
// GrpcUsersDataService.java
package com.miro.grpc.usersdata;

import com.google.rpc.Code;
import com.google.rpc.Status;
import com.miro.bl.core.types.Workspace;
import com.miro.bl.core.user.User;
import com.miro.bl.core.user.UserId;
import com.miro.common.logging.Logger;
import com.miro.common.logging.LoggerFactory;
import com.miro.proto.users.UserAvatarDataBatchRequest;
import com.miro.proto.users.UserAvatarDataBatchResponse;
import com.miro.proto.users.UserDataServiceGrpcKt;
import com.miro.proto.users.UserAvatarDataBatchResponse.Picture;
import com.miro.proto.users.UserAvatarDataBatchResponse.UserAvatar;
import io.grpc.Context;
import io.grpc.StatusRuntimeException;
import io.grpc.protobuf.StatusProto;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
import java.util.List;
import kotlin.Metadata;
import kotlin.collections.CollectionsKt;
import kotlin.coroutines.Continuation;
import kotlin.coroutines.CoroutineContext;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.Intrinsics;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import projects.pt.server.api.servlets.accounts.types.wrappers.factories.user.resources.picture.UserPictureResourceFactory;
import projects.pt.server.api.servlets.users.types.UserPictureResource;
import projects.pt.server.users.services.users.UsersService;
import projects.pt.server.users.workspaces.exceptions.WorkspaceNotFoundException;
import projects.pt.server.users.workspaces.services.WorkspaceService;

@Metadata(
   mv = {1, 7, 1},
   k = 1,
   d1 = {"\u0000\\\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000e\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\t\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\u0018\u0000 \u001d2\u00020\u0001:\u0001\u001dB\u001d\u0012\u0006\u0010\u0002\u001a\u00020\u0003\u0012\u0006\u0010\u0004\u001a\u00020\u0005\u0012\u0006\u0010\u0006\u001a\u00020\u0007¢\u0006\u0002\u0010\bJ\u0019\u0010\t\u001a\u00020\n2\u0006\u0010\u000b\u001a\u00020\fH\u0096@ø\u0001\u0000¢\u0006\u0002\u0010\rJ\u0010\u0010\u000e\u001a\u00020\u000f2\u0006\u0010\u0010\u001a\u00020\u0011H\u0002J \u0010\u0012\u001a\u00020\u00132\b\u0010\u0014\u001a\u0004\u0018\u00010\u00152\u0006\u0010\u0016\u001a\u00020\u00172\u0006\u0010\u0018\u001a\u00020\u0017J\u0010\u0010\u0019\u001a\u00020\u001a*\u00060\u001bj\u0002`\u001cH\u0002R\u000e\u0010\u0006\u001a\u00020\u0007X\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u0002\u001a\u00020\u0003X\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\u0004\u001a\u00020\u0005X\u0082\u0004¢\u0006\u0002\n\u0000\u0082\u0002\u0004\n\u0002\b\u0019¨\u0006\u001e"},
   d2 = {"Lcom/miro/grpc/usersdata/GrpcUsersDataService;", "Lcom/miro/proto/users/UserDataServiceGrpcKt$UserDataServiceCoroutineImplBase;", "usersService", "Lprojects/pt/server/users/services/users/UsersService;", "workspaceService", "Lprojects/pt/server/users/workspaces/services/WorkspaceService;", "userPictureFactory", "Lprojects/pt/server/api/servlets/accounts/types/wrappers/factories/user/resources/picture/UserPictureResourceFactory;", "(Lprojects/pt/server/users/services/users/UsersService;Lprojects/pt/server/users/workspaces/services/WorkspaceService;Lprojects/pt/server/api/servlets/accounts/types/wrappers/factories/user/resources/picture/UserPictureResourceFactory;)V", "getUserAvatarDataBatch", "Lcom/miro/proto/users/UserAvatarDataBatchResponse;", "request", "Lcom/miro/proto/users/UserAvatarDataBatchRequest;", "(Lcom/miro/proto/users/UserAvatarDataBatchRequest;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;", "getWorkspaceForId", "Lcom/miro/bl/core/types/Workspace;", "workspaceHeader", "", "mapToAvatar", "Lcom/miro/proto/users/UserAvatarDataBatchResponse$Picture;", "pictureResource", "Lprojects/pt/server/api/servlets/users/types/UserPictureResource;", "userId", "", "userWorkspaceId", "toGrpcException", "Lio/grpc/StatusRuntimeException;", "Ljava/lang/Exception;", "Lkotlin/Exception;", "Companion", "grpc-users-data-api"}
)
public final class GrpcUsersDataService extends UserDataServiceGrpcKt.UserDataServiceCoroutineImplBase {
   private final UsersService usersService;
   private final WorkspaceService workspaceService;
   private final UserPictureResourceFactory userPictureFactory;
   private static final Logger logger = LoggerFactory.getLogger(GrpcUsersDataService.class);
   @NotNull
   public static final Companion Companion = new Companion((DefaultConstructorMarker)null);

   @Nullable
   public Object getUserAvatarDataBatch(@NotNull UserAvatarDataBatchRequest request, @NotNull Continuation $completion) {
      try {
         Context.Key workspaceContext = GrpcWorkspaceIdHeaderInterceptor.Companion.getWORKSPACE_KEY();
         String var10000 = (String)workspaceContext.get();
         boolean var7;
         if (var10000 != null) {
            String var5 = var10000;
            var7 = false;
            Workspace var25 = this.getWorkspaceForId(var5);
            if (var25 != null) {
               Workspace workspace = var25;
               List var26;
               if (request.getUserIdsList().size() > 100) {
                  var26 = request.getUserIdsList();
                  Intrinsics.checkNotNullExpressionValue(var26, "request.userIdsList");
                  var26 = CollectionsKt.take((Iterable)var26, 100);
               } else {
                  var26 = request.getUserIdsList();
                  Intrinsics.checkNotNullExpressionValue(var26, "request.userIdsList");
                  var26 = CollectionsKt.take((Iterable)var26, request.getPageSize());
               }

               List userIds = var26;
               Iterable $this$map$iv = (Iterable)userIds;
               UsersService var16 = this.usersService;
               int $i$f$map = false;
               Collection destination$iv$iv = (Collection)(new ArrayList(CollectionsKt.collectionSizeOrDefault($this$map$iv, 10)));
               int $i$f$mapTo = false;
               Iterator var12 = $this$map$iv.iterator();

               Object item$iv$iv;
               boolean var15;
               while(var12.hasNext()) {
                  item$iv$iv = var12.next();
                  Long it = (Long)item$iv$iv;
                  var15 = false;
                  Intrinsics.checkNotNullExpressionValue(it, "it");
                  UserId var19 = new UserId(it);
                  destination$iv$iv.add(var19);
               }

               List var18 = (List)destination$iv$iv;
               Collection var27 = var16.getUsersByUserId(workspace, (Collection)var18);
               Intrinsics.checkNotNullExpressionValue(var27, "usersService.getUsersByU…apper(it) }\n            )");
               $this$map$iv = (Iterable)var27;
               $i$f$map = false;
               destination$iv$iv = (Collection)(new ArrayList(CollectionsKt.collectionSizeOrDefault($this$map$iv, 10)));
               $i$f$mapTo = false;
               var12 = $this$map$iv.iterator();

               while(var12.hasNext()) {
                  item$iv$iv = var12.next();
                  User it = (User)item$iv$iv;
                  var15 = false;
                  UserAvatarDataBatchResponse.UserAvatar.Builder var29 = UserAvatar.newBuilder();
                  com.miro.proto.bl.core.v1.user.UserId.Builder var10001 = com.miro.proto.bl.core.v1.user.UserId.newBuilder();
                  Intrinsics.checkNotNullExpressionValue(it, "it");
                  var10001 = var10001.setId(it.getUserId().toLong());
                  Workspace var10002 = it.getWorkspace();
                  Intrinsics.checkNotNullExpressionValue(var10002, "it.workspace");
                  Long var28 = var10002.getId();
                  Intrinsics.checkNotNullExpressionValue(var28, "it.workspace.id");
                  var29 = var29.setUserId(var10001.setWorkspaceId(var28)).setName(it.getName());
                  UserPictureResource var30 = this.userPictureFactory.createUserPictureResource(it);
                  long var10003 = it.getUserId().toLong();
                  Workspace var10004 = it.getWorkspace();
                  Intrinsics.checkNotNullExpressionValue(var10004, "it.workspace");
                  Long var32 = var10004.getId();
                  Intrinsics.checkNotNullExpressionValue(var32, "it.workspace.id");
                  UserAvatarDataBatchResponse.UserAvatar var17 = var29.setAvatar(this.mapToAvatar(var30, var10003, var32)).build();
                  destination$iv$iv.add(var17);
               }

               List usersWithAvatars = (List)destination$iv$iv;
               UserAvatarDataBatchResponse var31 = UserAvatarDataBatchResponse.newBuilder().addAllUsers((Iterable)usersWithAvatars).setNextPageToken("").build();
               Intrinsics.checkNotNullExpressionValue(var31, "UserAvatarDataBatchRespo…\n                .build()");
               return var31;
            }
         }

         GrpcUsersDataService $this$run = (GrpcUsersDataService)this;
         var7 = false;
         throw (Throwable)(new WorkspaceNotProvidedException());
      } catch (Exception var20) {
         throw (Throwable)this.toGrpcException(var20);
      }
   }

   private final Workspace getWorkspaceForId(String workspaceHeader) {
      try {
         Workspace var10000 = this.workspaceService.getById(Long.parseLong(workspaceHeader));
         Intrinsics.checkNotNullExpressionValue(var10000, "workspaceService.getById(workspaceHeader.toLong())");
         return var10000;
      } catch (NumberFormatException var3) {
         throw (Throwable)(new WorkspaceMalformedException());
      } catch (Exception var4) {
         throw (Throwable)var4;
      }
   }

   @NotNull
   public final UserAvatarDataBatchResponse.Picture mapToAvatar(@Nullable UserPictureResource pictureResource, long userId, long userWorkspaceId) {
      UserAvatarDataBatchResponse.Picture var10000;
      if (pictureResource == null) {
         logger.warn("No avatar picture found for user " + userId + " in workspace " + userWorkspaceId, new Object[0]);
         var10000 = Picture.newBuilder().build();
         Intrinsics.checkNotNullExpressionValue(var10000, "Picture.newBuilder().build()");
         return var10000;
      } else {
         var10000 = Picture.newBuilder().setId(pictureResource.getId()).setImage(pictureResource.getImage()).setSelfLink(pictureResource.getSelfLink()).setResourceId(pictureResource.getResourceId()).setOriginal(pictureResource.getImage()).setBig(pictureResource.getBig()).setMedium(pictureResource.getMedium()).setSmall(pictureResource.getSmall()).setSize44(pictureResource.getSize44()).setSize180(pictureResource.getSize180()).setSize210(pictureResource.getSize210()).setSize420(pictureResource.getSize420()).build();
         Intrinsics.checkNotNullExpressionValue(var10000, "Picture.newBuilder()\n   …420)\n            .build()");
         return var10000;
      }
   }

   private final StatusRuntimeException toGrpcException(Exception $this$toGrpcException) {
      Code statusCode = $this$toGrpcException instanceof WorkspaceNotFoundException ? Code.NOT_FOUND : ($this$toGrpcException instanceof WorkspaceNotProvidedException ? Code.INVALID_ARGUMENT : ($this$toGrpcException instanceof WorkspaceMalformedException ? Code.INVALID_ARGUMENT : Code.INTERNAL));
      if (statusCode == Code.INTERNAL) {
         logger.error("Unexpected error occurred while retrieving the users names and avatars", new Object[]{$this$toGrpcException});
      } else {
         logger.warn("Failed to retrieve users names and avatars", new Object[]{$this$toGrpcException});
      }

      StatusRuntimeException var10000 = StatusProto.toStatusRuntimeException(Status.newBuilder().setCode(statusCode.getNumber()).setMessage($this$toGrpcException.getMessage()).build());
      Intrinsics.checkNotNullExpressionValue(var10000, "StatusProto.toStatusRunt…       .build()\n        )");
      return var10000;
   }

   public GrpcUsersDataService(@NotNull UsersService usersService, @NotNull WorkspaceService workspaceService, @NotNull UserPictureResourceFactory userPictureFactory) {
      Intrinsics.checkNotNullParameter(usersService, "usersService");
      Intrinsics.checkNotNullParameter(workspaceService, "workspaceService");
      Intrinsics.checkNotNullParameter(userPictureFactory, "userPictureFactory");
      super((CoroutineContext)null, 1, (DefaultConstructorMarker)null);
      this.usersService = usersService;
      this.workspaceService = workspaceService;
      this.userPictureFactory = userPictureFactory;
   }

   @Metadata(
      mv = {1, 7, 1},
      k = 1,
      d1 = {"\u0000\u0014\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\b\u0086\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002R\u0016\u0010\u0003\u001a\n \u0005*\u0004\u0018\u00010\u00040\u0004X\u0082\u0004¢\u0006\u0002\n\u0000¨\u0006\u0006"},
      d2 = {"Lcom/miro/grpc/usersdata/GrpcUsersDataService$Companion;", "", "()V", "logger", "Lcom/miro/common/logging/Logger;", "kotlin.jvm.PlatformType", "grpc-users-data-api"}
   )
   public static final class Companion {
      private Companion() {
      }

      // $FF: synthetic method
      public Companion(DefaultConstructorMarker $constructor_marker) {
         this();
      }
   }
}
Editor is loading...