@@ -0,0 +1,2284 @@
+package com.linkedin.common.urn;%0A%0Aimport com.linkedin.common.FabricType;%0Aimport com.linkedin.data.template.Custom;%0Aimport com.linkedin.data.template.DirectCoercer;%0Aimport com.linkedin.data.template.TemplateOutputCastException;%0A%0Aimport java.net.URISyntaxException;%0A%0Aimport static com.linkedin.common.urn.UrnUtils.toFabricType;%0A%0Apublic class DataProcessUrn extends Urn %7B%0A    public static final String ENTITY_TYPE = %22dataProcess%22;%0A%0A    private final String dataJobNameEntity;%0A%0A    private static final String CONTENT_FORMAT = %22(%25s,%25s,%25s)%22;%0A%0A    private final String dataJobOrchestrator;%0A%0A    private final FabricType originEntity;%0A%0A    public DataProcessUrn(String orchestrator, String name, FabricType origin) %7B%0A        super(ENTITY_TYPE, String.format(CONTENT_FORMAT, orchestrator, name, origin.name()));%0A        this.dataJobOrchestrator = orchestrator;%0A        this.dataJobNameEntity = name;%0A        this.originEntity = origin;%0A    %7D%0A%0A    public String getJobNameEntity() %7B%0A        return dataJobNameEntity;%0A    %7D%0A%0A    public String getDataJobOrchestrator() %7B%0A        return dataJobOrchestrator;%0A    %7D%0A%0A    public FabricType getOriginEntity() %7B%0A        return originEntity;%0A    %7D%0A%0A    public static DataProcessUrn createFromString(String rawUrn) throws URISyntaxException %7B%0A        String content = new Urn(rawUrn).getContent();%0A        String%5B%5D parts = content.substring(1, content.length() - 1).split(%22,%22);%0A        return new DataProcessUrn(parts%5B0%5D, parts%5B1%5D, toFabricType(parts%5B2%5D));%0A    %7D%0A%0A    public static DataProcessUrn deserialize(String rawUrn) throws URISyntaxException %7B%0A        return createFromString(rawUrn);%0A    %7D%0A%0A    static %7B%0A        Custom.registerCoercer(new DirectCoercer%3CDataProcessUrn%3E() %7B%0A            public Object coerceInput(DataProcessUrn object) throws ClassCastException %7B%0A                return object.toString();%0A            %7D%0A%0A            public DataProcessUrn coerceOutput(Object object) throws TemplateOutputCastException %7B%0A                try %7B%0A                    return DataProcessUrn.createFromString((String) object);%0A                %7D catch (URISyntaxException e) %7B%0A                    throw new TemplateOutputCastException(%22Invalid URN syntax: %22 + e.getMessage(), e);%0A                %7D%0A            %7D%0A        %7D, DataProcessUrn.class);%0A    %7D%0A%7D%0A

add DataProcess Urn (#1673)