コード例 #1
0
 public GetPublicKeyTasks(IScCredentials credentials, SessionConfigUrlBuilder sessionConfigBuilder, ISSCUrlParameters sscGrammar, HttpClient httpClient)
 {
     this.sessionConfigBuilder = sessionConfigBuilder;
     this.sscGrammar           = sscGrammar;
     this.httpClient           = httpClient;
     this.credentials          = credentials;
 }
コード例 #2
0
        public ScApiSession(
            ISessionConfig config,
            IEntitySource entitySource,
            IScCredentials credentials,
            IMediaLibrarySettings mediaSettings,
            ItemSource defaultSource = null)
        {
            if (null == config)
            {
                throw new ArgumentNullException("ScApiSession.config cannot be null");
            }

            if (entitySource != null)
            {
                this.entitySource = entitySource.ShallowCopy();
            }

            this.sessionConfig = config.SessionConfigShallowCopy();
            this.requestMerger = new UserRequestMerger(this.sessionConfig, defaultSource, this.entitySource);

            if (null != credentials)
            {
                this.credentials = credentials.CredentialsShallowCopy();
            }

            if (null != mediaSettings)
            {
                this.mediaSettings = mediaSettings.MediaSettingsShallowCopy();
            }

            this.cookies = new CookieContainer();
            this.handler = new HttpClientHandler();
            this.handler.CookieContainer = cookies;
            this.httpClient = new HttpClient(this.handler);
        }
コード例 #3
0
        public static bool IsAnonymousSession(IScCredentials credentials)
        {
            if (!IsValidCredentials(credentials))
            {
                return(false);
            }

            return(string.IsNullOrWhiteSpace(credentials.Username));
        }
コード例 #4
0
        public IBaseSessionBuilder Credentials(IScCredentials credentials)
        {
            // @adk : won't be invoked more than once.
            // No validation needed.
            BaseValidator.CheckForNullAndEmptyOrThrow(credentials.Username, this.GetType().Name + ".Credentials.Username");
            BaseValidator.CheckForNullAndEmptyOrThrow(credentials.Password, this.GetType().Name + ".Credentials.Password");

            this.credentials = credentials.CredentialsShallowCopy();
            return(this);
        }
コード例 #5
0
 public ScTestApiSession(
     ISessionConfig config,
     IEntitySource entitySource,
     IScCredentials credentials,
     IMediaLibrarySettings mediaSettings,
     ItemSource defaultSource = null) :
     base(config, entitySource, credentials, mediaSettings, defaultSource)
 {
     this.GetPublicKeyInvocationsCount = 0;
 }
コード例 #6
0
        public void SetUp()
        {
            this.credentials = new SSCCredentialsPOD(
                "alex.fergusson",
                "man u is a champion",
                "sitecore");

            this.mediaSettings = new MediaLibrarySettings(
                "/sitecore/media library",
                "ashx",
                "~/media/");

            this.localhostConnection = new SessionConfig("localhost");
        }
コード例 #7
0
        public static ISitecoreSSCSession Session(IScCredentials credentials)
        {
            //return SitecoreSSCSessionBuilder.AnonymousSessionWithHost(instanceUrl)
            //                                .DefaultDatabase(defaultDatabase)
            //                                .BuildSession();



            var session = SitecoreSSCSessionBuilder.AuthenticatedSessionWithHost(instanceUrl)
                          .Credentials(credentials)
                          .DefaultDatabase(defaultDatabase)
                          .BuildSession();

            //System.Net.ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12;

            return(session);
        }
コード例 #8
0
        public void TestAuthenticatedSessionShouldBeCreatedByTheBuilder()
        {
            IScCredentials credentials = this.adminCredentials;

            var builder = SitecoreSSCSessionBuilder.AuthenticatedSessionWithHost("sitecore.net")
                          .Credentials(credentials)
                          .DefaultDatabase("web")
                          .DefaultLanguage("en")
                          .MediaLibraryRoot("/sitecore/media library")
                          .DefaultMediaResourceExtension("ashx");


            ISitecoreSSCSession session = builder.BuildSession();

            Assert.IsNotNull(session);

            var roSession = builder.BuildReadonlySession();

            Assert.IsNotNull(roSession);
        }
コード例 #9
0
 public static bool IsValidCredentials(IScCredentials credentials)
 {
     if (null == credentials)
     {
         return(false);
     }
     else if (string.IsNullOrWhiteSpace(credentials.Username))
     {
         // anonymous session
         return(true);
     }
     else
     {
         if (string.IsNullOrEmpty(credentials.Password))
         {
             return(false);
         }
         else
         {
             return(true);
         }
     }
 }
コード例 #10
0
 public void TearDown()
 {
     this.mediaSettings       = null;
     this.credentials         = null;
     this.localhostConnection = null;
 }