?? shopservlet.java
字號:
fwdInsert = true;
}
if (rightsInfo.verbElements[k].verbName.equals("ReversePlay") && rightsInfo.verbElements[k].verbArgName.equals("COUNT")) {
int existingPlayNum = Integer.parseInt(rightsInfo.verbElements[k].verbArgValue);
Integer argVal = new Integer(existingPlayNum+numPlaysInt);
rightsInfo.verbElements[k].verbArgValue = argVal.toString();
revInsert = true;
}
}
if (recordFlag != null) {
if (rightsInfo.verbElements[k].verbName.equals("Record") && rightsInfo.verbElements[k].verbArgName.equals("COUNT")) {
int existingRecordNum = Integer.parseInt(rightsInfo.verbElements[k].verbArgValue);
Integer argVal = new Integer(existingRecordNum+numRecordInt);
rightsInfo.verbElements[k].verbArgValue = argVal.toString();
}
}
}
if (playMode.equals("UnrestrictedPlay")){
if (!fwdInsert) {
VerbElement fwdElement = new VerbElement();
fwdElement.verbName = "ForwardPlay";
fwdElement.verbArgName = "COUNT";
fwdElement.verbArgValue = numPlays;
rightsInfo.InsertVerbElement(fwdElement);
}
if (!revInsert) {
VerbElement revElement = new VerbElement();
revElement.verbName = "ReversePlay";
revElement.verbArgName = "COUNT";
revElement.verbArgValue = numPlays;
rightsInfo.InsertVerbElement(revElement);
}
}
} else {
if (playMode.equals("UnrestrictedPlay"))
numRights = 4;
else
numRights = 2;
rightsInfo.verbElements = new VerbElement[numRights];
rightsInfo.verbElements[0] = new VerbElement();
rightsInfo.verbElements[0].verbName = "SimplePlay";
rightsInfo.verbElements[0].verbArgName = "COUNT";
rightsInfo.verbElements[0].verbArgValue = numPlays;
rightsInfo.verbElements[1] = new VerbElement();
rightsInfo.verbElements[1].verbName = "Record";
rightsInfo.verbElements[1].verbArgName = "COUNT";
rightsInfo.verbElements[1].verbArgValue = numRecord;
if (playMode.equals("UnrestrictedPlay")){
rightsInfo.verbElements[2] = new VerbElement();
rightsInfo.verbElements[2].verbName = "ForwardPlay";
rightsInfo.verbElements[2].verbArgName = "COUNT";
rightsInfo.verbElements[2].verbArgValue = numPlays;
rightsInfo.verbElements[3] = new VerbElement();
rightsInfo.verbElements[3].verbName = "ReversePlay";
rightsInfo.verbElements[3].verbArgName = "COUNT";
rightsInfo.verbElements[3].verbArgValue = numPlays;
}
}
} else {
System.out.println("ShopServlet: doBuyRights : creating new rightsInfo");
rightsInfo = new RightsInfo();
rightsInfo.userID = userID;
rightsInfo.movieName = itemID;
rightsInfo.movieid = 0;
rightsInfo.rightsType = 0;
rightsInfo.expired = false;
rightsInfo.remainingRights = 1;
rightsInfo.rightsStartDate = new Date();
rightsInfo.rightsEndDate = new Date(rightsInfo.rightsStartDate.getTime() + 1000 * 60 * 60 * 24 * 365);
if (playMode.equals("UnrestrictedPlay"))
numRights = 4;
else
numRights = 2;
rightsInfo.verbElements =new VerbElement[numRights];
rightsInfo.verbElements[0] = new VerbElement();
rightsInfo.verbElements[0].verbName = "SimplePlay";
rightsInfo.verbElements[0].verbArgName = "COUNT";
rightsInfo.verbElements[0].verbArgValue = numPlays;
rightsInfo.verbElements[1] = new VerbElement();
rightsInfo.verbElements[1].verbName = "Record";
rightsInfo.verbElements[1].verbArgName = "COUNT";
rightsInfo.verbElements[1].verbArgValue = numRecord;
if (playMode.equals("UnrestrictedPlay")){
rightsInfo.verbElements[2] = new VerbElement();
rightsInfo.verbElements[2].verbName = "ForwardPlay";
rightsInfo.verbElements[2].verbArgName = "COUNT";
rightsInfo.verbElements[2].verbArgValue = numPlays;
rightsInfo.verbElements[3] = new VerbElement();
rightsInfo.verbElements[3].verbName = "ReversePlay";
rightsInfo.verbElements[3].verbArgName = "COUNT";
rightsInfo.verbElements[3].verbArgValue = numPlays;
}
}
//System.out.println("RightsInfo "+rightsInfo.userID+" "+rightsInfo.movieName+" "+rightsInfo.verbElements[0].verbName);
printRightsInfo(rightsInfo);
rightsCart.put(itemID, rightsInfo);
sessioncache.setAttribute(sessionId, "opera.rights_cart", rightsCart);
forwardToJSP(request, response, jspPath);
}
protected void doTransferRights(
HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException, ShopException, SQLException {
String jspPath = request.getParameter("jsp_path");
if (jspPath == null)
jspPath = "/shop/index.jsp";
System.out.println("Print inputs to ShopServlet : doTransferRights ");
String userID = request.getParameter("userID");
System.out.println("In doTransferRights : userID : "+userID);
String transferTo = request.getParameter("transfer_to");
System.out.println("In doTransferRights : transfer_to : "+transferTo);
String itemID = request.getParameter("item_id");
System.out.println("In doTransferRights : item_id : "+itemID);
String itemTitle = request.getParameter("item_title");
logStrMessage("itemTitle",itemTitle);
int numRights = 1;
String playMode = request.getParameter("PlayMode");
logStrMessage("playMode",playMode);
String numPlays = request.getParameter("NumPlays");
int numPlaysInt = 0;
int numRecordInt = 0;
logStrMessage("numPlays", numPlays);
//System.out.println("Play Mode "+ ((playMode==null)?"NULL!!":playMode));
String numDays = null;
if (numPlays == null) {
numPlays = "0";
numDays = request.getParameter("NumDays");
logStrMessage("numDays", numDays);
} else {
numPlaysInt = Integer.parseInt(numPlays);
}
String recordFlag = request.getParameter("Record");
logStrMessage("recordFlag",recordFlag);
String numRecord = null;
if (recordFlag != null) {
numRecord = request.getParameter("NumRecord");
if (numRecord != null)
numRecordInt = Integer.parseInt(numRecord);
else
numRecordInt = 5; //default value of 5 records
numRights = numRights+1;
System.out.println("numRights is "+numRights);
} else
numRecord = "0";
RightsInfo rightsInfoFrom = conductor1.getUserRightsForContent(userID,itemID);
RightsInfo rightsInfoTo = conductor1.getUserRightsForContent(transferTo,itemID);
// Generate Exception as this should never happen in the my_account page
if (rightsInfoFrom == null) {
System.out.println("User doesn't have rights at all");
return;
}
if (rightsInfoFrom.verbElements == null) {
System.out.println("User doesn't have rights at all");
return;
}
boolean allowTransfer = false;
boolean allowPlay = false;
boolean allowRecord = false;
boolean allowForward = false;
boolean allowRewind = false;
for (int k=0; k < rightsInfoFrom.verbElements.length; k++) {
if (rightsInfoFrom.verbElements[k].verbName.equals("SimplePlay") && rightsInfoFrom.verbElements[k].verbArgName.equals("COUNT")) {
int existingPlayNum = Integer.parseInt(rightsInfoFrom.verbElements[k].verbArgValue);
if (existingPlayNum >= numPlaysInt)
allowPlay = true;
Integer argFromVal = new Integer(existingPlayNum-numPlaysInt);
rightsInfoFrom.verbElements[k].verbArgValue = argFromVal.toString();
}
if (playMode.equals("UnrestrictedPlay")){
if (rightsInfoFrom.verbElements[k].verbName.equals("ForwardPlay") && rightsInfoFrom.verbElements[k].verbArgName.equals("COUNT")) {
int existingPlayNum = Integer.parseInt(rightsInfoFrom.verbElements[k].verbArgValue);
if (existingPlayNum >= numPlaysInt)
allowForward = true;
Integer argVal = new Integer(existingPlayNum-numPlaysInt);
rightsInfoFrom.verbElements[k].verbArgValue = argVal.toString();
}
if (rightsInfoFrom.verbElements[k].verbName.equals("ReversePlay") && rightsInfoFrom.verbElements[k].verbArgName.equals("COUNT")) {
int existingPlayNum = Integer.parseInt(rightsInfoFrom.verbElements[k].verbArgValue);
if (existingPlayNum >= numPlaysInt)
allowRewind = true;
Integer argVal = new Integer(existingPlayNum-numPlaysInt);
rightsInfoFrom.verbElements[k].verbArgValue = argVal.toString();
}
}
if (recordFlag != null) {
if (rightsInfoTo.verbElements[k].verbName.equals("Record") && rightsInfoTo.verbElements[k].verbArgName.equals("COUNT")) {
int existingRecordNum = Integer.parseInt(rightsInfoFrom.verbElements[k].verbArgValue);
if (existingRecordNum >= numRecordInt)
allowRecord = true;
Integer argFromVal = new Integer(existingRecordNum-numRecordInt);
rightsInfoFrom.verbElements[k].verbArgValue = argFromVal.toString();
}
}
}
allowTransfer = allowPlay;
if (playMode.equals("UnrestrictedPlay")){
allowTransfer = allowTransfer && allowForward && allowRewind;
}
if (recordFlag != null)
allowTransfer = allowTransfer && allowRecord;
if (allowTransfer) {
if (rightsInfoTo != null) {
System.out.println("ShopServlet: doTransferRights : rightsInfoTo is not null");
if (rightsInfoTo.verbElements !=null){
boolean fwdInsert = false;
boolean revInsert = false;
for (int k=0; k< rightsInfoTo.verbElements.length; k++) {
if (rightsInfoTo.verbElements[k].verbName.equals("SimplePlay") && rightsInfoTo.verbElements[k].verbArgName.equals("COUNT")) {
int existingPlayNum = Integer.parseInt(rightsInfoTo.verbElements[k].verbArgValue);
Integer argToVal = new Integer(existingPlayNum+numPlaysInt);
rightsInfoTo.verbElements[k].verbArgValue = argToVal.toString();
}
if (playMode.equals("UnrestrictedPlay")){
if (rightsInfoTo.verbElements[k].verbName.equals("ForwardPlay") && rightsInfoTo.verbElements[k].verbArgName.equals("COUNT")) {
int existingPlayNum = Integer.parseInt(rightsInfoTo.verbElements[k].verbArgValue);
Integer argVal = new Integer(existingPlayNum+numPlaysInt);
rightsInfoTo.verbElements[k].verbArgValue = argVal.toString();
}
if (rightsInfoTo.verbElements[k].verbName.equals("ReversePlay") && rightsInfoTo.verbElements[k].verbArgName.equals("COUNT")) {
int existingPlayNum = Integer.parseInt(rightsInfoTo.verbElements[k].verbArgValue);
Integer argVal = new Integer(existingPlayNum+numPlaysInt);
rightsInfoTo.verbElements[k].verbArgValue = argVal.toString();
}
}
if (recordFlag != null) {
if (rightsInfoTo.verbElements[k].verbName.equals("Record") && rightsInfoTo.verbElements[k].verbArgName.equals("COUNT")) {
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -