Skip to content

Commit

Permalink
refactored REST Jaxb model, make it more consistent with ATOM Entry
Browse files Browse the repository at this point in the history
  • Loading branch information
jervisliu committed Jan 31, 2012
1 parent 56cd741 commit da11f50
Show file tree
Hide file tree
Showing 8 changed files with 113 additions and 128 deletions.
Expand Up @@ -386,7 +386,7 @@ public void updatePackageFromJAXB(@PathParam("packageName") String packageName,
existingModuleItem.updateDescription(module.getDescription());

/* TODO: add more updates to package item from JSON */
existingModuleItem.checkin(module.getCheckInComment());
existingModuleItem.checkin(module.getMetadata().getCheckInComment());
rulesRepository.save();
} catch (Exception e) {
throw new WebApplicationException(e);
Expand Down Expand Up @@ -650,9 +650,9 @@ public void updateAssetFromJAXB(
AssetItem ai = rulesRepository.loadModule(packageName).loadAsset(assetName);
/* Update asset */
ai.checkout();
ai.updateTitle(asset.getMetadata().getTitle());
ai.updateTitle(asset.getTitle());
ai.updateDescription(asset.getDescription());
ai.checkin(asset.getCheckInComment());
ai.checkin(asset.getMetadata().getCheckInComment());
rulesRepository.save();
} catch (Exception e) {
throw new WebApplicationException(e);
Expand Down
Expand Up @@ -63,13 +63,12 @@ public static Category toCategory(CategoryItem categoryItem, UriInfo uriInfo) {
public static Asset toAsset(AssetItem a, UriInfo uriInfo) {
AssetMetadata metadata = new AssetMetadata();
metadata.setUuid(a.getUUID());
metadata.setTitle(a.getTitle());
metadata.setLastModified(a.getLastModified().getTime());
metadata.setCreated(a.getCreatedDate().getTime());
metadata.setCreatedBy(a.getCreator());
metadata.setDisabled(a.getDisabled());
metadata.setFormat(a.getFormat());
metadata.setNote("<![CDATA[ " + a.getCheckinComment() + " ]]>");
metadata.setCheckInComment(a.getCheckinComment());
metadata.setVersionNumber(a.getVersionNumber());
List<CategoryItem> categories = a.getCategories();
//TODO: Is this a bug since cat's are never assigned to metadata after this?
String[] cats = new String[categories.size()];
Expand All @@ -79,8 +78,10 @@ public static Asset toAsset(AssetItem a, UriInfo uriInfo) {
}

Asset ret = new Asset();
ret.setTitle(a.getTitle());
ret.setPublished(a.getLastModified().getTime());
ret.setAuthor(a.getLastContributor());
ret.setMetadata(metadata);
ret.setCheckInComment(a.getCheckinComment());
ret.setDescription(a.getDescription());
ret.setRefLink(uriInfo.getBaseUriBuilder()
.path("/packages/{packageName}/assets/{assetName}")
Expand All @@ -91,24 +92,23 @@ public static Asset toAsset(AssetItem a, UriInfo uriInfo) {
ret.setSourceLink(uriInfo.getBaseUriBuilder()
.path("/packages/{packageName}/assets/{assetName}/source")
.build(a.getModule().getName(), a.getName()));
ret.setVersion(a.getVersionNumber());
return ret;
}

public static Package toPackage(ModuleItem p, UriInfo uriInfo) {
PackageMetadata metadata = new PackageMetadata();
metadata.setUuid(p.getUUID());
metadata.setCreated(p.getCreatedDate().getTime());
metadata.setLastModified(p.getLastModified().getTime());
metadata.setLastContributor(p.getLastContributor());
metadata.setState((p.getState() != null) ? p.getState().getName() : "");
metadata.setArchived(p.isArchived());
metadata.setVersionNumber(p.getVersionNumber());
metadata.setCheckInComment(p.getCheckinComment());

Package ret = new Package();
ret.setMetadata(metadata);
ret.setVersion(p.getVersionNumber());
ret.setTitle(p.getTitle());
ret.setCheckInComment(p.getCheckinComment());
ret.setAuthor(p.getLastContributor());
ret.setPublished(p.getLastModified().getTime());
ret.setDescription(p.getDescription());

ret.setBinaryLink(uriInfo.getBaseUriBuilder()
Expand All @@ -118,7 +118,7 @@ public static Package toPackage(ModuleItem p, UriInfo uriInfo) {
.path("/packages/{packageName}/source")
.build(p.getName()));
//ret.setSnapshot(p.getSnapshotName());
ret.setVersion(p.getVersionNumber());

Iterator<AssetItem> iter = p.getAssets();
Set<URI> assets = new HashSet<URI>();
while (iter.hasNext()) {
Expand Down
Expand Up @@ -17,21 +17,20 @@
package org.drools.guvnor.server.jaxrs.jaxb;

import java.net.URI;
import java.util.Date;

import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlRootElement;

@XmlRootElement()
public class Asset {

private AssetMetadata metadata;

private String title;
private String description;

private String checkInComment;

private long version;

private String author;
private Date published;
private URI binaryLink, sourceLink, refLink;

private AssetMetadata metadata;

@XmlElement
public URI getBinaryLink() {
Expand All @@ -50,7 +49,15 @@ public URI getSourceLink() {
public void setSourceLink(URI sourceLink) {
this.sourceLink = sourceLink;
}

@XmlElement
public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}
@XmlElement()
public String getDescription() {
return description;
Expand All @@ -60,25 +67,24 @@ public void setDescription(String description) {
this.description = description;
}


@XmlElement()
public String getCheckInComment() {
return checkInComment;
}

public void setCheckInComment(String checkInComment) {
this.checkInComment = checkInComment;
@XmlElement
public String getAuthor() {
return author;
}

@XmlElement()
public long getVersion() {
return version;
public void setAuthor(String author) {
this.author = author;
}

public void setVersion(long version) {
this.version = version;

@XmlElement
public Date getPublished() {
return published;
}

public void setPublished(Date published) {
this.published = published;
}

@XmlElement
public URI getRefLink() {
return refLink;
Expand Down
Expand Up @@ -23,26 +23,15 @@

@XmlRootElement(name="metadata")
public class AssetMetadata {

private String Uuid;

private String title;

private String[] categories;

private Date lastModified;

private String note;

private Date created;

private String createdBy;

private String format;

private boolean disabled;

private boolean disabled;
private String state;
private long versionNumber;
private String checkInComment;

@XmlElement
public String getUuid() {
Expand All @@ -53,15 +42,6 @@ public void setUuid(String uuid) {
Uuid = uuid;
}

@XmlElement
public String getTitle() {
return title;
}

public void setTitle(String title) {
this.title = title;
}

@XmlElement
public String[] getCategories() {
return categories;
Expand All @@ -71,15 +51,6 @@ public void setCategories(String[] categories) {
this.categories = categories;
}

@XmlElement
public Date getLastModified() {
return lastModified;
}

public void setLastModified(Date lastModified) {
this.lastModified = lastModified;
}

@XmlElement
public String getNote() {
return note;
Expand All @@ -98,15 +69,6 @@ public void setCreated(Date created) {
this.created = created;
}

@XmlElement
public String getCreatedBy() {
return createdBy;
}

public void setCreatedBy(String createdBy) {
this.createdBy = createdBy;
}

@XmlElement
public String getFormat() {
return format;
Expand All @@ -132,5 +94,23 @@ public String getState() {

public void setState(String state) {
this.state = state;
}
}

@XmlElement
public long getVersionNumber() {
return versionNumber;
}

public void setVersionNumber(long versionNumber) {
this.versionNumber = versionNumber;
}

@XmlElement
public String getCheckInComment() {
return checkInComment;
}

public void setCheckInComment(String checkInComment) {
this.checkInComment = checkInComment;
}
}
Expand Up @@ -24,16 +24,10 @@

@XmlRootElement()
public class Package {

private String title;

private String description;

private long version;

private String checkInComment;

//private String snapshot;
private String author;
private Date published;

private URI binaryLink, sourceLink;

Expand Down Expand Up @@ -87,21 +81,21 @@ public void setDescription(String description) {
}

@XmlElement
public String getCheckInComment() {
return checkInComment;
public String getAuthor() {
return author;
}

public void setCheckInComment(String checkInComment) {
this.checkInComment = checkInComment;
public void setAuthor(String author) {
this.author = author;
}

@XmlElement
public long getVersion() {
return version;
public Date getPublished() {
return published;
}

public void setVersion(long version) {
this.version = version;
public void setPublished(Date published) {
this.published = published;
}

@XmlElement
Expand Down
Expand Up @@ -25,10 +25,11 @@
public class PackageMetadata {
private String uuid;
private Date created;
private Date lastModified;
private String lastContributor;
private String format;
private String state;
private boolean archived;
private long versionNumber;
private String checkInComment;

@XmlElement
public String getUuid() {
Expand All @@ -47,25 +48,16 @@ public Date getCreated() {
public void setCreated(Date created) {
this.created = created;
}

@XmlElement
public Date getLastModified() {
return lastModified;
public String getFormat() {
return format;
}

public void setLastModified(Date lastModified) {
this.lastModified = lastModified;
public void setFormat(String format) {
this.format = format;
}

@XmlElement
public String getLastContributor() {
return lastContributor;
}

public void setLastContributor(String lastContributor) {
this.lastContributor = lastContributor;
}

@XmlElement
public String getState() {
return state;
Expand All @@ -82,6 +74,25 @@ public boolean isArchived() {

public void setArchived(boolean archived) {
this.archived = archived;
}

@XmlElement
public long getVersionNumber() {
return versionNumber;
}

public void setVersionNumber(long versionNumber) {
this.versionNumber = versionNumber;
}

@XmlElement
public String getCheckInComment() {
return checkInComment;
}

public void setCheckInComment(String checkInComment) {
this.checkInComment = checkInComment;
}


}

0 comments on commit da11f50

Please sign in to comment.