diff --git a/src/UserImporter/App.config b/src/UserImporter/App.config index 2db91cb2e1fd327d5554f858619d44608876c096..4e41de6d52cda356c4cf20fef8d8f054877de7fb 100644 --- a/src/UserImporter/App.config +++ b/src/UserImporter/App.config @@ -25,12 +25,16 @@ </dependentAssembly> <dependentAssembly> <assemblyIdentity name="Coscine.Database" publicKeyToken="767d77427707b70a" culture="neutral" /> - <bindingRedirect oldVersion="0.0.0.0-1.25.1.0" newVersion="1.25.1.0" /> + <bindingRedirect oldVersion="0.0.0.0-1.28.0.0" newVersion="1.28.0.0" /> </dependentAssembly> <dependentAssembly> <assemblyIdentity name="linq2db" publicKeyToken="e41013125f9e410a" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-3.1.1.0" newVersion="3.1.1.0" /> </dependentAssembly> + <dependentAssembly> + <assemblyIdentity name="Coscine.Database.T4" publicKeyToken="84b4c404a0696261" culture="neutral" /> + <bindingRedirect oldVersion="0.0.0.0-1.28.0.0" newVersion="1.28.0.0" /> + </dependentAssembly> </assemblyBinding> </runtime> </configuration> \ No newline at end of file diff --git a/src/UserImporter/Program.cs b/src/UserImporter/Program.cs index fb31db63b6500a0bacbef9cb17fbc6c21c574966..a8ed1052d64148fdd42a11587acaf7aca72f5dc4 100644 --- a/src/UserImporter/Program.cs +++ b/src/UserImporter/Program.cs @@ -18,6 +18,12 @@ namespace Coscine.UserImporter { public class Program { + + private static Dictionary<string, string> RORMap = new Dictionary<string, string>() + { + { "https://ror.org/04xfq0f34", "https://login.rz.rwth-aachen.de/shibboleth" }, + }; + public static void Main(string[] args) { var configuration = new ConsulConfiguration(); @@ -91,7 +97,7 @@ namespace Coscine.UserImporter try { var user = CreateUserObjectFromGraph(graphImpl, entry.Subject); - StoreUser(configuration, externalIdModel, userModel, shib, triple.Object.ToString(), user); + StoreUser(configuration, externalIdModel, userModel, shib, triple.Object.ToString(), user, absoluteUri); createdUsers++; if (createdUsers%100 == 0) { @@ -112,13 +118,14 @@ namespace Coscine.UserImporter } } - private static void StoreUser(IConfiguration configuration, ExternalIdModel externalIdModel, UserModel userModel, ExternalAuthenticator shib, string externalId, User user) + private static void StoreUser(IConfiguration configuration, ExternalIdModel externalIdModel, UserModel userModel, ExternalAuthenticator shib, string externalId, User user, string absoluteUri) { userModel.Insert(user); externalIdModel.Insert(new ExternalId { ExternalIdColumn = externalId, ExternalAuthenticatorId = shib.Id, + Organization = RORMap.ContainsKey(absoluteUri) ? RORMap[absoluteUri] : "", UserId = user.Id }); ADHandler.AddUser(user, configuration); diff --git a/src/UserImporter/UserImporter.csproj b/src/UserImporter/UserImporter.csproj index 97839661bdada446de7a5a575ca36452c45eb13d..508b0656555ad184184e548e964149c4c758c069 100644 --- a/src/UserImporter/UserImporter.csproj +++ b/src/UserImporter/UserImporter.csproj @@ -47,11 +47,11 @@ <Reference Include="Coscine.Configuration, Version=1.5.0.0, Culture=neutral, PublicKeyToken=ce3d7a32d7dc1e5a, processorArchitecture=MSIL"> <HintPath>..\packages\Coscine.Configuration.1.5.0\lib\net461\Coscine.Configuration.dll</HintPath> </Reference> - <Reference Include="Coscine.Database, Version=1.25.1.0, Culture=neutral, PublicKeyToken=767d77427707b70a, processorArchitecture=MSIL"> - <HintPath>..\packages\Coscine.Database.1.25.1\lib\net461\Coscine.Database.dll</HintPath> + <Reference Include="Coscine.Database, Version=1.28.0.0, Culture=neutral, PublicKeyToken=767d77427707b70a, processorArchitecture=MSIL"> + <HintPath>..\packages\Coscine.Database.1.28.0-topic-1278-dfnaa0004\lib\net461\Coscine.Database.dll</HintPath> </Reference> - <Reference Include="Coscine.Database.T4, Version=1.25.1.0, Culture=neutral, PublicKeyToken=84b4c404a0696261, processorArchitecture=MSIL"> - <HintPath>..\packages\Coscine.Database.1.25.1\lib\net461\Coscine.Database.T4.dll</HintPath> + <Reference Include="Coscine.Database.T4, Version=1.28.0.0, Culture=neutral, PublicKeyToken=84b4c404a0696261, processorArchitecture=MSIL"> + <HintPath>..\packages\Coscine.Database.1.28.0-topic-1278-dfnaa0004\lib\net461\Coscine.Database.T4.dll</HintPath> </Reference> <Reference Include="Coscine.Metadata, Version=1.3.2.0, Culture=neutral, processorArchitecture=MSIL"> <HintPath>..\packages\Coscine.Metadata.1.3.2\lib\net461\Coscine.Metadata.dll</HintPath> diff --git a/src/UserImporter/packages.config b/src/UserImporter/packages.config index f335e20933f3503601a25bf133b59816b874fbc1..2d316af92a8ab7a5058df2258eb99e6e0ae567ee 100644 --- a/src/UserImporter/packages.config +++ b/src/UserImporter/packages.config @@ -3,7 +3,7 @@ <package id="Consul" version="0.7.2.6" targetFramework="net461" /> <package id="Coscine.ActiveDirectory" version="1.3.0" targetFramework="net461" /> <package id="Coscine.Configuration" version="1.5.0" targetFramework="net461" /> - <package id="Coscine.Database" version="1.25.1" targetFramework="net461" /> + <package id="Coscine.Database" version="1.28.0-topic-1278-dfnaa0004" targetFramework="net461" /> <package id="Coscine.Metadata" version="1.3.2" targetFramework="net461" /> <package id="dotNetRDF" version="2.5.0" targetFramework="net461" /> <package id="dotNetRDF.Data.Virtuoso" version="2.5.0" targetFramework="net461" />