public void processProperties(Properties properties) {
        if (properties == null) {
            return;
        }
        this.description = InterpolationUtil.interpolate(this.description, properties);
        for (License l : this.getLicenses()) {
            l.setName(InterpolationUtil.interpolate(l.getName(), properties));
            l.setUrl(InterpolationUtil.interpolate(l.getUrl(), properties));
        }
        this.name = InterpolationUtil.interpolate(this.name, properties);
        this.projectURL = InterpolationUtil.interpolate(this.projectURL, properties);
        this.organization = InterpolationUtil.interpolate(this.organization, properties);
        this.parentGroupId = InterpolationUtil.interpolate(this.parentGroupId, properties);
        this.parentArtifactId = InterpolationUtil.interpolate(this.parentArtifactId, properties);
        this.parentVersion = InterpolationUtil.interpolate(this.parentVersion, properties);
    }
@Test
    public void testProcessProperties() {

        String text = "This is a test of '${key}' '${nested}'";
        Model instance = new Model();
        instance.setName(text);
        instance.processProperties(null);
        String expResults = "This is a test of '${key}' '${nested}'";
        assertEquals(expResults, instance.getName());

        Properties prop = new Properties();
        prop.setProperty("key", "value");
        prop.setProperty("nested", "nested ${key}");

        instance.setName(text);
        instance.processProperties(prop);
        expResults = "This is a test of 'value' 'nested value'";
        assertEquals(expResults, instance.getName());
    }