code: public boolean addCssProperty(final String cssName, final String cssValue) {
  
          final long stamp = lock.writeLock();
          try {
  
              if (cssName == null) {
                  throw new NullValueException("styleName cannot be null");
              }
              final String strippedCssName = StringUtil.strip(cssName);
              if (StringUtil.endsWithColon(strippedCssName)) {
                  throw new InvalidValueException(
                          "cssName can not end with : (colon)");
              }
              if (cssValue == null) {
                  throw new NullValueException("cssValue cannot be null");
              }
              final String trimmedCssValue = StringUtil.strip(cssValue);
              if (trimmedCssValue.length() > 0
                      && (trimmedCssValue.charAt(0) == ':' || trimmedCssValue
                              .charAt(trimmedCssValue.length() - 1) == ';')) {
                  throw new InvalidValueException(
                          "value can not start with : (colon) or end with ; (semicolon)");
              }
  
              final boolean addToAttributeValueMap = super.addToAttributeValueMap(
                      strippedCssName, cssValue);
              if (addToAttributeValueMap) {
                  // to save the corresponding
                  // object to abstractCssPropertyClassObjects
                  getCssPropertyLockless(strippedCssName);
              }
              return addToAttributeValueMap;
          } finally {
              lock.unlockWrite(stamp);
          }
      }
docs: eg: {@code addCssProperty("color", "green")}
  
  @param cssName
  eg: color
  @param cssValue
  eg: green (for color styleName)
  @since 1.0.0
  @author WFF
  @return true if the cssName and cssValue has been added or modified. If
  it contains same style name and value then it will return false.