Een Use-Class toevoegen

De info -component in zijn huidige vorm heeft geen use-klasse nodig om zijn eenvoudige functie uit te voeren. Er zijn echter gevallen waarin u dingen moet doen die niet in HTML kunnen worden gedaan en dus een gebruiksklasse nodig hebt. Houd echter rekening met het volgende:

NOTE
Een gebruiksklasse mag alleen worden gebruikt wanneer er iets niet alleen in HTML kan worden gedaan.

Stel dat u de component info de eigenschappen title en description van de bron wilt laten weergeven, maar allemaal in kleine letters. Omdat HTML geen methode heeft voor het verlagen van tekenreeksen, kunt u een Java-gebruiksklasse toevoegen en /apps/my-example/component/info/info.html als volgt wijzigen:

<div data-sly-use.info="Info">
    <h1>${info.lowerCaseTitle}</h1>
    <p>${info.lowerCaseDescription}</p>
</div>

Daarnaast wordt /apps/my-example/component/info/Info.java gemaakt.

package apps.my_example.components.info;

import com.adobe.cq.sightly.WCMUsePojo;

public class Info extends WCMUsePojo {
    private String lowerCaseTitle;
    private String lowerCaseDescription;

    @Override
    public void activate() throws Exception {
        lowerCaseTitle = getProperties().get("title", "").toLowerCase();
        lowerCaseDescription = getProperties().get("description", "").toLowerCase();
    }

    public String getLowerCaseTitle() {
        return lowerCaseTitle;
    }

    public String getLowerCaseDescription() {
        return lowerCaseDescription;
    }
}

Gelieve te zien de documenten van Java voor com.adobe.cq.sightly.WCMUsePojovoor meer details.

Laten we nu eens kijken naar de verschillende delen van de code.