@Override
    public Path touch(final Path file, final TransferStatus status) throws BackgroundException {
        if(new SDSTripleCryptEncryptorFeature(session, nodeid).isEncrypted(containerService.getContainer(file))) {
            status.setFilekey(SDSTripleCryptEncryptorFeature.generateFileKey());
        }
        return super.touch(file, status);
    }
@Test(expected = BackgroundException.class)
    public void testTouchFileRoot() throws Exception {
        try {
            final SDSNodeIdProvider nodeid = new SDSNodeIdProvider(session);
            new SDSTouchFeature(session, nodeid).touch(new Path(new AlphanumericRandomStringService().random(), EnumSet.of(Path.Type.file)), new TransferStatus());
        }
        catch(InteroperabilityException e) {
            assertEquals("Error -80001. Parent ID must be positive. Please contact your web hosting service provider for assistance.", e.getDetail());
            throw e;
        }
    }