public ClassificationPoliciesConfig shareClassificationsPolicies() throws BackgroundException {
        if(classificationPolicies.get() == null) {
            final Matcher matcher = Pattern.compile(SDSSession.VERSION_REGEX).matcher(this.softwareVersion().getRestApiVersion());
            if(matcher.matches()) {
                if(new Version(matcher.group(1)).compareTo(new Version("4.30")) >= 0) {
                    try {
                        classificationPolicies.set(new ConfigApi(client).requestClassificationPoliciesConfigInfo(StringUtils.EMPTY));
                    }
                    catch(ApiException e) {
                        // Precondition: Right "Config Read" required.
                        log.warn(String.format("Failure %s reading configuration", new SDSExceptionMappingService(nodeid).map(e)));
                        throw new SDSExceptionMappingService(nodeid).map(e);
                    }
                }
            }
        }
        return classificationPolicies.get();
    }
@Test
    public void testClassificationConfiguration() throws Exception {
        final ClassificationPoliciesConfig policies = session.shareClassificationsPolicies();
        assertNotNull(policies);
        assertNotNull(policies.getShareClassificationPolicies());
        assertNotNull(policies.getShareClassificationPolicies().getClassificationRequiresSharePassword());
        assertEquals(0, policies.getShareClassificationPolicies().getClassificationRequiresSharePassword().getValue().intValue());
    }